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">Hosting</a> and |
10 <a href="packaging.html">Packaging</a>.</p> | 10 <a href="packaging">Packaging</a>.</p> |
11 | 11 |
12 <p class="warning"><b>Warning:</b> | 12 <p class="warning"><b>Warning:</b> |
13 As of M33, | 13 As of M33, |
14 Windows stable/beta channel users can only download extensions hosted | 14 Windows stable/beta channel users can only download extensions hosted |
15 in the Chrome Web Store (see | 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>). | 16 <a href="http://blog.chromium.org/2013/11/protecting-windows-users-from-maliciou s">Protecting Windows users from malicious extensions</a>). |
mkearney1
2014/04/09 19:43:30
Check if this link works to blogpost.
| |
17 </p> | 17 </p> |
18 | 18 |
19 <p> | 19 <p> |
20 Previously when off-store extensions were supported, | 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. | 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 | 22 However, extensions hosted on the Chrome Web Store are updated |
23 via the Chrome update mechanism which developers do not control. | 23 via the Chrome update mechanism which developers do not control. |
24 Extension developers should be careful about updating extensions | 24 Extension developers should be careful about updating extensions |
25 that have a dependency on the native binary | 25 that have a dependency on the native binary |
26 (for example, legacy extensions using <a href="npapi.html">NPAPI</a>). | 26 (for example, legacy extensions using <a href="npapi">NPAPI</a>). |
27 </p> | 27 </p> |
28 | 28 |
29 <h2 id="overview">Overview</h2> | 29 <h2 id="overview">Overview</h2> |
30 <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> |
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> | 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> |
32 | 32 |
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> | 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> |
34 | 34 |
35 | 35 |
36 <h2 id="update_url">Update URL</h2> | 36 <h2 id="update_url">Update URL</h2> |
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, | 37 <p>If you're hosting your own extension or app, you need to add the "update_url" field to your <a href="manifest"><code>manifest.json</code></a> file, |
38 like this:</p> | 38 like this:</p> |
39 | 39 |
40 <pre data-filename="manifest.json"> | 40 <pre data-filename="manifest.json"> |
41 { | 41 { |
42 "name": "My extension", | 42 "name": "My extension", |
43 ... | 43 ... |
44 <b>"update_url": "http://myhost.com/mytestextension/updates.xml"</b>, | 44 <b>"update_url": "http://myhost.com/mytestextension/updates.xml"</b>, |
45 ... | 45 ... |
46 } | 46 } |
47 </pre> | 47 </pre> |
(...skipping 11 matching lines...) Expand all Loading... | |
59 </pre> | 59 </pre> |
60 | 60 |
61 <p>This XML format is borrowed from that used by Omaha, Google's update infrastr ucture. See <a href="http://code.google.com/p/omaha/">http://code.google.com/p/o maha/</a> for more details. | 61 <p>This XML format is borrowed from that used by Omaha, Google's update infrastr ucture. See <a href="http://code.google.com/p/omaha/">http://code.google.com/p/o maha/</a> for more details. |
62 The extensions system uses the following attributes | 62 The extensions system uses the following attributes |
63 for the <strong><app></strong> | 63 for the <strong><app></strong> |
64 and <strong><updatecheck></strong> elements of the update manifest: | 64 and <strong><updatecheck></strong> elements of the update manifest: |
65 </p> | 65 </p> |
66 | 66 |
67 <p><b>appid</b><br> | 67 <p><b>appid</b><br> |
68 The extension or app ID, generated based on a hash of the public key, | 68 The extension or app ID, generated based on a hash of the public key, |
69 as described in <a href="packaging.html">Packaging</a>. You can find the | 69 as described in <a href="packaging">Packaging</a>. You can find the |
70 ID of an extension or Chrome App by going to the Extensions page (<b>chrome://ex tensions</b>). | 70 ID of an extension or Chrome App by going to the Extensions page (<b>chrome://ex tensions</b>). |
71 </p> | 71 </p> |
72 {{?is_apps}} | 72 {{?is_apps}} |
73 <p> | 73 <p> |
74 Hosted apps, however, are not listed on the Extensions page. You can find the I D of any | 74 Hosted apps, however, are not listed on the Extensions page. You can find the I D of any |
75 app using the following steps: | 75 app using the following steps: |
76 </p> | 76 </p> |
77 {{/is_apps}} | 77 {{/is_apps}} |
78 | 78 |
79 {{?is_apps}} | 79 {{?is_apps}} |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
164 <pre data-filename="updates.xml"> | 164 <pre data-filename="updates.xml"> |
165 <?xml version='1.0' encoding='UTF-8'?> | 165 <?xml version='1.0' encoding='UTF-8'?> |
166 <gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> | 166 <gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> |
167 <app appid='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'> | 167 <app appid='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'> |
168 <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>/> |
169 </app> | 169 </app> |
170 </gupdate> | 170 </gupdate> |
171 </pre> | 171 </pre> |
172 | 172 |
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> | 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 |