Chrome 应用和扩展的区别

84

Chrome应用和扩展有什么区别?

使用应用可以做什么,而使用扩展无法完成,反之亦然?


3
自从这个问题被提出以来,Chrome扩展程序、打包应用和托管应用已经发生了变化。Google对这些内容有非常好的文档说明。若有疑问,建议先查看以下页面:https://developer.chrome.com/apps/about_apps,https://developer.chrome.com/extensions。 - devdanke
Chrome将在Windows、Mac和Linux上停止支持Chrome应用程序。Chrome OS将继续支持Chrome应用程序。 https://blog.chromium.org/2016/08/from-chrome-apps-to-web.html - kane
5个回答

55
引自https://developer.chrome.com/webstore/apps_vs_extensions:
我们已经在浏览器中有了“Web应用程序”的概念,作为比网站更丰富和交互性更强的东西,但比桌面应用程序更轻便和小型化。例如游戏、照片编辑器和视频播放器;所有这些类别都可以作为在浏览器内运行的紧密聚焦的应用程序。 Google Chrome 正在以一种对于任何使用过智能手机上应用程序的人来说都很熟悉的方式正式确立 Web 应用程序的概念。 扩展程序…可以扩展 Google Chrome 和其中所浏览的网站的功能。例如,它们可以通过向地址栏添加一个新按钮(如一个始终存在的货币转换器)来扩展 Google Chrome。这样的按钮也可以适用于当前正在查看的网站——例如,单击货币转换器按钮以转换您正在查看的网站上的所有价格。同样,您还可以向上下文菜单中引入新项目,更改 Omnibox 的行为(地址栏上的输入字段),访问用户的浏览历史记录(经过同意)等等。您还可以修改网页内容——例如,在每个页面中的每个链接旁边嵌入“发送电子邮件”按钮,或自定义您最喜欢的网站的布局。
与应用程序相比,扩展程序跨越网站和 Web 应用程序;它们通常在所有网站上都生效(尽管有些是特定于某个网站的)。 应用程序不以这种方式与其他应用程序组合;它们独立运行,就像任何常规网站一样。 从我所了解的情况来看,Chrome 应用程序只是在 Chrome 的 Web Store 中注册的 Web 应用程序(例如 Gmail)。它们基本上只是被吹嘘的书签。Google 似乎引入了它们,目的是让他们的浏览器更像“操作系统”,为运行 Chrome OS 的平板电脑做准备。由于 Chrome OS 除了 Chrome 之外没有任何本地应用程序,因此他们需要某种方式让你能够“安装”应用程序…即使那些应用程序只是网站。

扩展程序实际上可以影响浏览器的行为(例如广告拦截)。它们可以向Chrome的工具栏添加按钮,拦截网络请求,更改DOM等。


那么扩展可以用于从网站中提取和操作信息?应用程序更加固定,是“程序”吗? - frum
1
@frum:是的,这是一个大致的想法。我认为应用程序现在处于非常初步的阶段。我预见它们在不久的将来会变得更加强大。你可能最终能够双击一个Word文档,并在Chrome的非常薄的实例中打开Google Docs应用程序。 - StriplingWarrior
Chrome 应用程序(无论是托管还是封装)不仅仅是标签页的变形。 它们具有独特的功能。例如:
  1. 通知权限
  2. 后台页面 / 脚本(manifest v2 有更好的支持)。
- Erez A. Korn
为什么当我在manifest.json中添加“browser_action”键时,会返回一个警告:“browser_action仅允许用于扩展,但这是一个旧版打包应用程序”,我该如何从旧版打包应用程序迁移到非旧版打包应用程序? - Hosein Aqajani
我对这个答案有疑问,说实话。 - byronyasgur
显示剩余3条评论

30

17
请参考以下链接:(Chrome 应用与扩展)。该链接说明了有两种应用程序类型:托管和打包。托管应用程序高级书签。但是打包的应用程序为你提供了一些扩展和应用程序两个世界最好的功能。
当然,扩展可以扩展核心浏览器功能,除了 Chrome 已经提供的 UI 外,几乎不提供任何额外的 UI。

5

对于开发者来说,有三种Chrome分发渠道。

它们的功能逐渐增强,具体如下:

  1. Chrome扩展--几乎没有用户界面
  2. Chrome托管应用程序
  3. Chrome打包应用程序

更多信息和充分讨论请见此视频.


-2

引用自http://www.chromeplugins.org/extensions/chrome-web-apps-extensions-spot-the-difference/

(因为解释非常好)

Chrome扩展和Chrome Web应用程序之间的主要区别

Chrome扩展和Web应用程序之间的主要区别之一是它们的位置。大多数Chrome扩展可以从Chrome扩展库下载,而Chrome Web应用程序可以从Chrome Web商店安装。

Chrome扩展和Web应用程序之间的另一个主要区别是,虽然扩展用于增强Chrome浏览器的功能,但Web应用程序在浏览器内运行,具有不同的用户界面。与Web应用程序不同,扩展几乎没有或者有很少的UI组件。

从技术角度来看,Chrome应用程序和扩展之间的主要区别是应用程序中存在“启动”参数,该参数指示Chrome在用户启动由他/她安装的应用程序时显示。


2
哇!这是我读过的最糟糕的StackOverflow答案之一!你应该考虑删除这个答案。 - Theodore R. Smith
2
这个回答非常接近谷歌解释 Chrome 扩展、Chrome 打包应用和 Chrome 托管应用之间的区别。我不明白所有的负评是为什么。 - devdanke
1
+devdanke之所以被downvote是因为它只是从另一个网站复制而来(SO:Plagarism说“不要[只是]复制...使用他们的话和想法来支持你自己的观点”),而且它没有很好地回答问题(就像类似的Google文章一样,这就是为什么人们会来到这里)。 - Travis Bemrose
它提到了它的来源(因此抄袭指控是不公平的,因为它不仅“只是”使用他们的文字,而且还引用了他们),但我同意,这段文本并不那么有用/易于理解... - Julix
谁认为这是复制的答案,只需看回答时间。两者都是精确的时间“回答于2011年3月17日15:28”。@TravisBemrose - Bala
@Bala,问题不在于Alastair复制了这个页面上的另一个答案,而是从另一个网站复制了一个答案,却没有解释/扩展/添加任何内容。 - Travis Bemrose

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接