移动Chrome应用程序是否以chrome运行?

Dav*_*der 4 android google-chrome-app

说穿了,移动Chrome应用程序Chrome有什么关系吗?毕竟,似乎有理由期待它的名字中有Chrome.这个问题源于这样一个事实:当我移植我的"基于chrome的移动应用程序"(它不在"浏览器"中运行)时,我收到了大量奇怪的错误,前几个小时我不知道是什么正在发生.

注意:此问题已过期,移动Chrome应用现在的工作方式与主要答案的编辑部分中所述的不同:

默认情况下,Chrome Apps for Mobile默认使用Crosswalk项目提供的可嵌入Chromium WebView,这既有优势也有一些权衡.

mmo*_*cny 8

(注意:我在Google的(非常小的)团队工作,构建开源项目,将Chrome应用程序引入移动设备)


首先,我会从文档的顶部粘贴Chrome应用的说明:

"Chrome应用程序提供的功能与本机应用程序一样强大,但与网页一样安全.就像网络应用一样,Chrome应用程序也是用HTML5,JavaScript和CSS编写的.但Chrome应用的外观和行为与原生应用相似,而且它们具有类似原生的功能,这些功能比网络应用可用的功能强大得多.

Chrome Apps可以访问传统网站无法使用的Chrome API和服务.您可以构建功能强大的应用程序,与网络和硬件设备,媒体工具等进行交互."

接下来,我将粘贴的说明Chrome应用的移动,直接从我们的顶部README.md:

"您可以通过基于Apache Cordova的工具链在Android和iOS上运行您的Chrome应用程序,这是一个开源移动开发框架,用于使用HTML,CSS和JavaScript构建具有本机功能的移动应用程序.

Apache Cordova使用本机应用程序shell包装应用程序的Web代码,并允许您通过Google Play和/或Apple App Store分发混合Web应用程序.要将Apache Cordova与现有的Chrome应用程序一起使用,请使用cca(c ordova c hrome a pp)命令行工具."


现在回答你的问题: "坦率地说,移动Chrome应用程序与Chrome有什么关系吗?毕竟,似乎有理由期待它的名字中有Chrome."

直言不讳答案:

,它们不会像在桌面上那样在Chrome上运行.但是,使用cca它们可以以最适合这些平台的方式在Mobile上运行,并且我们会尽可能地使用Chrome渲染器.

编辑截至2014年7月:我们现在在每个Android版本上运行Crosswalk WebView内的应用程序(目前基于Chrome 36,但随着时间的推移会发生变化).我在这个原始答案的底部描述了这种方法,但有关系统网页浏览的一些细节 - 虽然仍然准确 - 不再适用于Chrome Apps for Mobile.您可以在我们的主要github页面上阅读更多相关信息.

抱歉命名混乱.我确实知道为什么假设你做了什么是合理的.的" 镀铬 ",在" Chrome应用移动 "具体是指源应用程序类型,而不是到所述目标运行时类型.我们尽力记录最好的情况 - 你有一个简单但不那么混乱的标题的建议吗?

不那么直言不讳的答案:

Chrome Apps for Mobile是一个开源项目,旨在利用Apache Cordova构建支持将现有Chrome应用包装到混合移动应用中的工具.

也就是说,cca创建一个100%真实的Android/iOS应用程序,就像使用相应的Mobile SDK构建的任何其他应用程序一样.此外,为了您的利益和便利,我们创建了一个应用程序shell,它使用系统WebView组件来显示和运行您的应用程序内容.我们会阅读您的应用程序清单,模拟Chrome应用程序生命周期,运行您的后台脚本,打开Chrome应用程序窗口,以及实施许多Chrome Apps设备API.我们将所有这些工作捆绑到一个我们称之为的工具包中cca.我们还为核心提供了大量补丁,cordova以便通常使Android/iOS上的所有混合应用程序更好.

现在,默认系统WebView如下:

  • iOS:基于Mobile Safari WebKit.很多网络平台与Chrome重叠,但并不精确,而且发展缓慢.
  • Android 4.3或更早版本:旧版Android WebView.约会和偶尔的马车,但在某些任务上仍然相当高效.
  • Android 4.4:基于Chrome的WebView.这个初始版本带来了一系列现代网络api,并启用了远程网络检查员.但是,它还引入了一些回归,停留在Chrome 30上,并未带来所有功能,如WebGL和WebRTC.
  • Android未来:自首次推出基于Chrome的WebView以来,宣布正在进行的工作正在使WebView自动更新,就像Chrome浏览器一样.

因此,在Android 4.4上,我们已经使用真正的Chromium渲染器将您的Chrome应用转换为屏幕上的像素.在iOS上,WebView非常具有现代性和高性能,许多应用程序运行良好.对于Android Legacy WebView,它的命中与错过.但是有希望......

令人兴奋的是,由于英特尔Crosswalk项目,我们最近在cordova-android上工作的很大一部分就是在你的应用程序旁边捆绑了一个基于树的铬"webview" .这意味着您将自己的应用程序与您自己的现代版Chromium webview一起发送到Play商店.最好的是,它将一直运行到Android 4.0.预计在接下来的一个月内如何自己试用!


最后,虽然有一些缺点,但重要的是要注意我们方法的好处:

  • 通过作为真正的Android/iOS混合应用程序运行,您可以编写自己的cordova插件来运行本机Android/iOS代码,以便在您发现需要时扩充应用程序.
  • 您的应用使用应用商店进行分发,包括用户评论,自动更新和获利功能.
  • 您的应用在用户主屏幕上有一个图标,位于应用切换器等位置.
  • 最重要的是:你不必等待未来!立即开始使用cca,并使用当前可用的网页浏览器在iOS和Android上运行您的Chrome应用,并且很快就会得到改进.