OLD | NEW |
1 <h1>Autoupdating</h1> | 1 <h1>Autoupdating</h1> |
2 | 2 |
3 | 3 |
4 <p>We want extensions and apps to be autoupdated for some of the same reasons as
Google Chrome itself: to incorporate bug and security fixes, add new features o
r performance enhancements, and improve user interfaces.</p> | 4 <p>We want extensions and apps to be autoupdated for some of the same reasons as
Google Chrome itself: to incorporate bug and security fixes, add new features o
r performance enhancements, and improve user interfaces.</p> |
5 | 5 |
6 <p>If you publish using the <a href="https://chrome.google.com/webstore/develope
r/dashboard">Chrome Developer Dashboard</a>, you can <em>ignore this page</em>.
You can use the dashboard to release updated versions to users, as well as to th
e Chrome Web Store.</p> | 6 <p>If you publish using the <a href="https://chrome.google.com/webstore/develope
r/dashboard">Chrome Developer Dashboard</a>, you can <em>ignore this page</em>.
You can use the dashboard to release updated versions to users, as well as to th
e Chrome Web Store.</p> |
7 | 7 |
8 <p>If you want to host somewhere other than the store, keep reading. | 8 <p>If you want to host somewhere other than the store, keep reading. |
9 You should also read <a href="hosting.html">Hosting</a> and | 9 You should also read <a href="hosting.html">Hosting</a> and |
10 <a href="packaging.html">Packaging</a>.</p> | 10 <a href="packaging.html">Packaging</a>.</p> |
11 | 11 |
| 12 <p class="warning"><b>Warning:</b> |
| 13 As of M33, |
| 14 Windows stable/beta channel users can only download extensions hosted |
| 15 in the Chrome Web Store (see |
| 16 <a href="http://blog.chromium.org/2013/11/protecting-windows-users-from-maliciou
s.html">Protecting Windows users from malicious extensions</a>). |
| 17 </p> |
| 18 |
| 19 <p> |
| 20 Previously when off-store extensions were supported, |
| 21 it was possible to have the native binaries and the extension be updated in lock
step. |
| 22 However, extensions hosted on the Chrome Web Store are updated |
| 23 via the Chrome update mechanism which developers do not control. |
| 24 Extension developers should be careful about updating extensions |
| 25 that have a dependency on the native binary |
| 26 (for example, legacy extensions using <a href="npapi.html">NPAPI</a>). |
| 27 </p> |
12 | 28 |
13 <h2 id="overview">Overview</h2> | 29 <h2 id="overview">Overview</h2> |
14 <ul><li>A manifest may contain an "update_url" field, pointing to a location for
doing update checks.</li> | 30 <ul><li>A manifest may contain an "update_url" field, pointing to a location for
doing update checks.</li> |
15 <li>The content returned by an update check is an <em>update manifest</em> XML d
ocument listing the latest version of an extension.</li></ul> | 31 <li>The content returned by an update check is an <em>update manifest</em> XML d
ocument listing the latest version of an extension.</li></ul> |
16 | 32 |
17 <p>Every few hours, the browser checks whether any installed extensions or apps
have an update URL. For each one, it makes a request to that URL looking for an
update manifest XML file. If the update manifest mentions a version that is more
recent than what's installed, the browser downloads and installs the new versio
n. As with manual updates, the new <code>.crx</code> file must be signed with th
e same private key as the currently installed version.</p> | 33 <p>Every few hours, the browser checks whether any installed extensions or apps
have an update URL. For each one, it makes a request to that URL looking for an
update manifest XML file. If the update manifest mentions a version that is more
recent than what's installed, the browser downloads and installs the new versio
n. As with manual updates, the new <code>.crx</code> file must be signed with th
e same private key as the currently installed version.</p> |
18 | 34 |
19 | 35 |
20 <h2 id="update_url">Update URL</h2> | 36 <h2 id="update_url">Update URL</h2> |
21 <p>If you're hosting your own extension or app, you need to add the "update_url"
field to your <a href="manifest.html"><code>manifest.json</code></a> file, | 37 <p>If you're hosting your own extension or app, you need to add the "update_url"
field to your <a href="manifest.html"><code>manifest.json</code></a> file, |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 <pre data-filename="updates.xml"> | 164 <pre data-filename="updates.xml"> |
149 <?xml version='1.0' encoding='UTF-8'?> | 165 <?xml version='1.0' encoding='UTF-8'?> |
150 <gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> | 166 <gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> |
151 <app appid='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'> | 167 <app appid='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'> |
152 <updatecheck codebase='http://myhost.com/mytestextens
ion/mte_v2.crx' version='2.0' <b>prodversionmin='3.0.193.0'</b>/> | 168 <updatecheck codebase='http://myhost.com/mytestextens
ion/mte_v2.crx' version='2.0' <b>prodversionmin='3.0.193.0'</b>/> |
153 </app> | 169 </app> |
154 </gupdate> | 170 </gupdate> |
155 </pre> | 171 </pre> |
156 | 172 |
157 <p>This would ensure that users would autoupdate to version 2 only if they are r
unning Google Chrome 3.0.193.0 or greater.</p> | 173 <p>This would ensure that users would autoupdate to version 2 only if they are r
unning Google Chrome 3.0.193.0 or greater.</p> |
OLD | NEW |