Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(126)

Side by Side Diff: chrome/common/extensions/docs/hosting.html

Issue 5398002: doc stuff (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/common/extensions/docs/history.html ('k') | chrome/common/extensions/docs/i18n.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html><!-- This page is a placeholder for generated extensions api doc. Note: 1 <!DOCTYPE html><!-- This page is a placeholder for generated extensions api doc. Note:
2 1) The <head> information in this page is significant, should be uniform 2 1) The <head> information in this page is significant, should be uniform
3 across api docs and should be edited only with knowledge of the 3 across api docs and should be edited only with knowledge of the
4 templating mechanism. 4 templating mechanism.
5 3) All <body>.innerHTML is genereated as an rendering step. If viewed in a 5 3) All <body>.innerHTML is genereated as an rendering step. If viewed in a
6 browser, it will be re-generated from the template, json schema and 6 browser, it will be re-generated from the template, json schema and
7 authored overview content. 7 authored overview content.
8 4) The <body>.innerHTML is also generated by an offline step so that this 8 4) The <body>.innerHTML is also generated by an offline step so that this
9 page may easily be indexed by search engines. 9 page may easily be indexed by search engines.
10 --><html xmlns="http://www.w3.org/1999/xhtml"><head> 10 --><html xmlns="http://www.w3.org/1999/xhtml"><head>
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 <ul> 163 <ul>
164 <li>Browser UI 164 <li>Browser UI
165 <ul> 165 <ul>
166 <li><a href="browserAction.html">Browser Actions</a></li> 166 <li><a href="browserAction.html">Browser Actions</a></li>
167 <li><a href="contextMenus.html">Context Menus</a></li> 167 <li><a href="contextMenus.html">Context Menus</a></li>
168 <li><a href="notifications.html">Desktop Notifications</a></li > 168 <li><a href="notifications.html">Desktop Notifications</a></li >
169 <li><a href="omnibox.html">Omnibox</a></li> 169 <li><a href="omnibox.html">Omnibox</a></li>
170 <li><a href="options.html">Options Pages</a></li> 170 <li><a href="options.html">Options Pages</a></li>
171 <li><a href="override.html">Override Pages</a></li> 171 <li><a href="override.html">Override Pages</a></li>
172 <li><a href="pageAction.html">Page Actions</a></li> 172 <li><a href="pageAction.html">Page Actions</a></li>
173 <li><a href="themes.html">Themes</a></li>
174 </ul> 173 </ul>
175 </li> 174 </li>
176 <li>Browser Interaction 175 <li>Browser Interaction
177 <ul> 176 <ul>
178 <li><a href="bookmarks.html">Bookmarks</a></li> 177 <li><a href="bookmarks.html">Bookmarks</a></li>
179 <li><a href="cookies.html">Cookies</a></li> 178 <li><a href="cookies.html">Cookies</a></li>
180 <li><a href="events.html">Events</a></li> 179 <li><a href="events.html">Events</a></li>
181 <li><a href="history.html">History</a></li> 180 <li><a href="history.html">History</a></li>
182 <li><a href="management.html">Management</a></li> 181 <li><a href="management.html">Management</a></li>
183 <li><a href="tabs.html">Tabs</a></li> 182 <li><a href="tabs.html">Tabs</a></li>
(...skipping 13 matching lines...) Expand all
197 </ul> 196 </ul>
198 </li> 197 </li>
199 <li>Finishing 198 <li>Finishing
200 <ul> 199 <ul>
201 <li class="leftNavSelected">Hosting</li> 200 <li class="leftNavSelected">Hosting</li>
202 <li><a href="external_extensions.html">Other Deployment Option s</a></li> 201 <li><a href="external_extensions.html">Other Deployment Option s</a></li>
203 </ul> 202 </ul>
204 </li> 203 </li>
205 </ul> 204 </ul>
206 </li> 205 </li>
206 <li><h2><a href="apps.html">Packaged Apps</a></h2></li>
207 <li><h2><a href="tutorials.html">Tutorials</a></h2> 207 <li><h2><a href="tutorials.html">Tutorials</a></h2>
208 <ul> 208 <ul>
209 <li><a href="tut_debugging.html">Debugging</a></li> 209 <li><a href="tut_debugging.html">Debugging</a></li>
210 <li><a href="tut_analytics.html">Google Analytics</a></li> 210 <li><a href="tut_analytics.html">Google Analytics</a></li>
211 <li><a href="tut_oauth.html">OAuth</a></li> 211 <li><a href="tut_oauth.html">OAuth</a></li>
212 </ul> 212 </ul>
213 </li> 213 </li>
214 <li><h2>Reference</h2> 214 <li><h2>Reference</h2>
215 <ul> 215 <ul>
216 <li>Formats 216 <li>Formats
217 <ul> 217 <ul>
218 <li><a href="manifest.html">Manifest Files</a></li> 218 <li><a href="manifest.html">Manifest Files</a></li>
219 <li><a href="match_patterns.html">Match Patterns</a></li> 219 <li><a href="match_patterns.html">Match Patterns</a></li>
220 <!-- <li>Packages (.crx)</li> -->
221 </ul> 220 </ul>
222 </li> 221 </li>
222 <li><a href="permission_warnings.html">Permission Warnings</a></li >
223 <li><a href="api_index.html">chrome.* APIs</a></li> 223 <li><a href="api_index.html">chrome.* APIs</a></li>
224 <li><a href="api_other.html">Other APIs</a></li> 224 <li><a href="api_other.html">Other APIs</a></li>
225 </ul> 225 </ul>
226 </li> 226 </li>
227 <li><h2><a href="samples.html">Samples</a></h2></li> 227 <li><h2><a href="samples.html">Samples</a></h2></li>
228 <div class="line"> </div> 228 <div class="line"> </div>
229 <li><h2>More</h2> 229 <li><h2>More</h2>
230 <ul> 230 <ul>
231 <li><a href="http://code.google.com/chrome/webstore/docs/index.htm l">Chrome Web Store</a></li> 231 <li><a href="http://code.google.com/chrome/webstore/docs/index.htm l">Chrome Web Store</a></li>
232 <li><a href="http://code.google.com/chrome/apps/docs/developers_gu ide.html">Installable Web Apps</a></li> 232 <li><a href="http://code.google.com/chrome/apps/docs/developers_gu ide.html">Hosted Apps</a></li>
233 <li><a href="themes.html">Themes</a></li> 233 <li><a href="themes.html">Themes</a></li>
234 </ul> 234 </ul>
235 </li> 235 </li>
236 </ul> 236 </ul>
237 </div> 237 </div>
238 <script> 238 <script>
239 initToggles(); 239 initToggles();
240 </script> 240 </script>
241 241
242 <div class="g-unit" id="gc-pagecontent"> 242 <div class="g-unit" id="gc-pagecontent">
243 <div id="pageTitle"> 243 <div id="pageTitle">
244 <h1 class="page_title">Hosting</h1> 244 <h1 class="page_title">Hosting</h1>
245 </div> 245 </div>
246 <!-- TABLE OF CONTENTS --> 246 <!-- TABLE OF CONTENTS -->
247 <div id="toc"> 247 <div id="toc" style="display: none; ">
248 <h2>Contents</h2> 248 <h2>Contents</h2>
249 <ol> 249 <ol>
250 <li> 250 <li>
251 <a href="#gallery">Publishing to the Extensions Gallery</a> 251 <a>h2Name</a>
252 <ol> 252 <ol>
253 <li style="display: none; "> 253 <li>
254 <a>h3Name</a>
255 </li>
256 </ol>
257 </li><li>
258 <a href="#server">Hosting on your own server</a>
259 <ol>
260 <li style="display: none; ">
261 <a>h3Name</a> 254 <a>h3Name</a>
262 </li> 255 </li>
263 </ol> 256 </ol>
264 </li> 257 </li>
265 <li style="display: none; "> 258 <li>
266 <a href="#apiReference">API reference</a> 259 <a href="#apiReference">API reference</a>
267 <ol> 260 <ol>
268 <li> 261 <li>
269 <a href="#properties">Properties</a> 262 <a href="#properties">Properties</a>
270 <ol> 263 <ol>
271 <li> 264 <li>
272 <a href="#property-anchor">propertyName</a> 265 <a href="#property-anchor">propertyName</a>
273 </li> 266 </li>
274 </ol> 267 </ol>
275 </li> 268 </li>
(...skipping 27 matching lines...) Expand all
303 </div> 296 </div>
304 <!-- /TABLE OF CONTENTS --> 297 <!-- /TABLE OF CONTENTS -->
305 298
306 <!-- Standard content lead-in for experimental API pages --> 299 <!-- Standard content lead-in for experimental API pages -->
307 <p id="classSummary" style="display: none; "> 300 <p id="classSummary" style="display: none; ">
308 For information on how to use experimental APIs, see the <a href="expe rimental.html">chrome.experimental.* APIs</a> page. 301 For information on how to use experimental APIs, see the <a href="expe rimental.html">chrome.experimental.* APIs</a> page.
309 </p> 302 </p>
310 303
311 <!-- STATIC CONTENT PLACEHOLDER --> 304 <!-- STATIC CONTENT PLACEHOLDER -->
312 <div id="static"><div id="pageData-name" class="pageData">Hosting</div> 305 <div id="static"><div id="pageData-name" class="pageData">Hosting</div>
313 <div id="pageData-showTOC" class="pageData">true</div>
314 306
315 <p> 307 <p>
316 Until the 308 This page tells you how to host <code>.crx</code> files
317 <a href="http://code.google.com/chrome/webstore/">Chrome Web Store</a> 309 on your own server.
318 is available to the public, 310 If you distribute your extension, app, or theme solely through the
319 you can host your extension 311 <a href="http://chrome.google.com/webstore">Chrome Web Store</a>,
320 using the <a href="https://chrome.google.com/extensions">Extensions Gallery</a>. 312 you don't need this page.
321 Once the store is public, 313 Instead, consult the store help and
322 the gallery's contents will be merged into the store. 314 <a href="http://code.google.com/chrome/webstore/index.html">developer documentat ion</a>.
323 Another option 315 <!-- PENDING: add a link to the help -->
324 is hosting your extension on other servers. 316 </p>
317
318 <p class="note">
319 <strong>Note:</strong>
320 If you've already published extensions to the
321 <a href="https://chrome.google.com/extensions">Extensions Gallery</a>,
322 they will be merged into the store.
325 </p> 323 </p>
326 324
327 <p> 325 <p>
328 This page gives tips for using the gallery, 326 By convention, extensions,
329 as well as details on how to host extensions on your own server. 327 installable web apps, and themes are served—whether
330 </p> 328 by the Chrome Web Store or by a custom server—as
331 329 <code>.crx</code> files.
332 <h2 id="gallery">Publishing to the Extensions Gallery</h2> 330 When you upload a ZIP file with the
333 331 <a href="https://chrome.google.com/webstore/developer/dashboard">Chrome Develope r Dashboard</a>,
334 <p> 332 the dashboard creates the <code>.crx</code> file for you.
335 To publish extensions,
336 you first need to pay a one-time
337 <a href="http://blog.chromium.org/2010/08/security-improvements-and-registration .html">$5 developer registration fee</a>.
338 </p>
339
340 <p class="note">
341 <b>Note:</b>
342 If you used the Chrome Developer Dashboard before
343 the first developer preview release of the Chrome Web Store —
344 to publish an extension, for example —
345 you don't need to pay the fee.
346 </p> 333 </p>
347 334
348 <p> 335 <p>
349 Publishing to the gallery is easy, 336 If you aren't publishing using the dashboard,
350 but your extension might be more popular 337 you need to create the <code>.crx</code> file yourself,
351 if you take a little time to prepare: 338 as described in <a href="packaging.html">Packaging</a>.
352 </p> 339 You can also specify
353 340 <a href="autoupdate.html">autoupdate</a> information to ensure that
354 <ul> 341 your users will have the latest copy of the <code>.crx</code> file.
355 <li> Visit the
356 <a href="https://chrome.google.com/extensions">gallery</a>
357 and look at similar extensions' pages.
358 Your extension's page should look at least as good as theirs. </li>
359 <li> Consider creating a support site for your extension,
360 maybe a <a href="http://groups.google.com">Google Group</a>.
361 If your extension's page has a link to your support site,
362 people will be less likely to
363 complain in the user comments. </li>
364 <li> Consider creating a custom Gmail account
365 for this extension or for all of your extensions.
366 Only one account can upload, publish, and update your extension. </li>
367 <li> Create some great text (titles and descriptions)
368 and images (maybe even video) for your extension.
369 See the
370 <a href="http://www.google.com/support/chrome/bin/answer.py?answer=113909">g allery help</a>
371 for details on screenshot and text requirements. </li>
372 </ul>
373
374 <p>
375 To upload your extension,
376 just zip up your extension's directory,
377 go to the
378 <a href="https://chrome.google.com/extensions/developer/dashboard">Developer Das hboard</a>,
379 and add your extension.
380 This creates a page for your extension,
381 viewable only by you.
382 Now you can edit your extension's page —
383 uploading images, specifying text, and so on.
384 </p> 342 </p>
385 343
386 <p> 344 <p>
387 Once you verify that your extension's page looks good 345 A server that hosts <code>.crx</code> files
388 and all links are valid,
389 publish your extension.
390 </p>
391
392 <p>
393 When you want to update your extension,
394 use the dashboard to upload and publish the new version.
395 Your users will automatically get the new version
396 over the next few hours.
397 </p>
398
399
400 <h2 id="server">Hosting on your own server</h2>
401
402 <p>
403 By convention, extensions are served —
404 whether by the gallery or by a custom server —
405 as <code>.crx</code> files.
406 When you upload an extension to the gallery,
407 the gallery creates the <code>.crx</code> file for you.
408 If you aren't using the gallery,
409 you need to create the <code>.crx</code> file yourself,
410 as described in <a href="packaging.html">Packaging</a>.
411 </p>
412
413 <p class="note">
414 <b>Note:</b>
415 If you do your own hosting,
416 don't forget to set up
417 <a href="autoupdate.html">autoupdate</a>,
418 so you can be sure that
419 your extension's users have the latest version.
420 </p>
421
422 <p>
423 A server that hosts extensions
424 must use appropriate HTTP headers, 346 must use appropriate HTTP headers,
425 so that users can install your extension 347 so that users can install the file
426 by clicking a link to it. 348 by clicking a link to it.
427 </p> 349 </p>
428 350
429 <p> 351 <p>
430 Google Chrome considers a file to be an extension 352 Google Chrome considers a file to be installable
431 if <b>either</b> of the following is true: 353 if <b>either</b> of the following is true:
432 </p> 354 </p>
433 355
434 <ul> 356 <ul>
435 <li> 357 <li>
436 The file has the content type 358 The file has the content type
437 <code>application/x-chrome-extension</code> 359 <code>application/x-chrome-extension</code>
438 </li> 360 </li>
439 <li> 361 <li>
440 The file suffix is <code>.crx</code> 362 The file suffix is <code>.crx</code>
(...skipping 13 matching lines...) Expand all
454 <li> "unknown/unknown" </li> 376 <li> "unknown/unknown" </li>
455 <li> "application/unknown" </li> 377 <li> "application/unknown" </li>
456 <li> "*/*" </li> 378 <li> "*/*" </li>
457 </ul> 379 </ul>
458 </li> 380 </li>
459 </ul> 381 </ul>
460 </li> 382 </li>
461 </ul> 383 </ul>
462 384
463 <p> 385 <p>
464 The most common reason for failing to recognize an extension 386 The most common reason for failing to recognize an installable file
465 is that the server sends the header 387 is that the server sends the header
466 <code>X-Content-Type-Options: no sniff</code>. 388 <code>X-Content-Type-Options: no sniff</code>.
467 The second most common reason 389 The second most common reason
468 is that the server sends an unknown content type 390 is that the server sends an unknown content type—one
469 one that isn't in the previous list. 391 that isn't in the previous list.
470 To fix an HTTP header issue, 392 To fix an HTTP header issue,
471 either change the configuration of the server 393 either change the configuration of the server
472 or try hosting the extension at another server. 394 or try hosting the <code>.crx</code> file at another server.
473 </p> 395 </p>
474 </div> 396 </div>
475 397
476 <!-- API PAGE --> 398 <!-- API PAGE -->
477 <div class="apiPage" style="display: none; "> 399 <div class="apiPage" style="display: none; ">
478 <a name="apiReference"></a> 400 <a name="apiReference"></a>
479 <h2>API reference: chrome.apiname </h2> 401 <h2>API reference: chrome.apiname </h2>
480 402
481 <!-- PROPERTIES --> 403 <!-- PROPERTIES -->
482 <div class="apiGroup"> 404 <div class="apiGroup">
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
659 _uff=0; 581 _uff=0;
660 urchinTracker(); 582 urchinTracker();
661 } 583 }
662 catch(e) {/* urchinTracker not available. */} 584 catch(e) {/* urchinTracker not available. */}
663 </script> 585 </script>
664 <!-- end analytics --> 586 <!-- end analytics -->
665 </div> 587 </div>
666 </div> <!-- /gc-footer --> 588 </div> <!-- /gc-footer -->
667 </div> <!-- /gc-container --> 589 </div> <!-- /gc-container -->
668 </body></html> 590 </body></html>
OLDNEW
« no previous file with comments | « chrome/common/extensions/docs/history.html ('k') | chrome/common/extensions/docs/i18n.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698