使用弧焊机从Android应用移植Chrome应用商店
作者:互联网
此问题仅与应用程序开发人员有关!
我正在尝试将我的Android应用程序转换并发布到chrome网站商店.
我使用了Google入门指南中建议的弧焊机chrome应用程序.
我已经从ARC焊机应用程序下载了zip文件.当我从焊机应用程序启动该应用程序时,它正在按预期工作.
问题1(已解决):
在Chrome应用商店上发布zip文件并尝试在OSX平台上运行的Chrome上安装后,该应用会显示“不受支持的平台”,并且不允许安装.
我在虚拟机上安装了ChromiumOS,该应用程序似乎兼容.
尝试安装时,出现错误“找不到文件”.它尝试提取清单中列出的应用程序ID的名称的文件.我检查发现清单中的ID与应用商店中的ID不匹配.解压缩zip,根据应用商店中的id更改清单中的id,增加版本号,重新打包并发布.之后尝试安装-在OSX上运行的Chrome上,该应用已更改为兼容,但下载zip并进行检查后,出现了…
问题2(尚未解决):
出现错误“清单文件无效”
在ChromiumOS上安装时,也会发生同样的情况-应用程序下载成功,新的应用程序图标出现在应用程序抽屉中,并且在“检查”阶段之后,图标从应用程序抽屉中消失,并且显示清单错误.
有人可以建议我如何尝试解决此问题吗?
任何帮助表示赞赏.
我列出了由弧焊机生成的清单文件:
{
"name": "__MSG_extName__",
"default_locale": "en",
"manifest_version": 2,
"version": "1.0",
"version_name": "1.0",
"offline_enabled": true,
"app": {
"background": {
"page": "app_main.html"
}
},
"icons": {
"16": "icon.png",
"128": "icon.png"
},
"permissions": [
"alarms",
{"fileSystem": ["write"]},
"overrideEscFullscreen",
"unlimitedStorage",
"notifications",
"storage",
"accessibilityFeatures.read",
"https://clients2.google.com/",
{"socket": ["tcp-connect", "tcp-listen", "udp-bind", "udp-send-to", "resolve-host", "resolve-proxy"]},
"fullscreen"]
,
"requirements": {
"3D": {
"features": ["webgl"]
}
},
"kiosk_enabled": true,
"import": [{"id": "mfaihdlpglflfgpfjcifdjdjcckigekc"}],
"file_handlers": {},
"arc_metadata": {
"apkList": [
"CityAdventures.apk"
],
"enableExternalDirectory": false,
"formFactor": "tablet",
"name": "Discover 3D Shapes",
"orientation": "landscape",
"packageName": "com.myCompany.CityAdventures",
"resize": "reconfigure"
}
}
解决方法:
好的,这就是ARC的工作原理.
ARC Welder应用程序允许您在任何平台上测试/创建ARC应用程序.
但是,它生成的最终应用程序依赖于App Runtime for Chrome扩展名.它装有Shared Module mechanism,这是清单中的神秘ID“ mfaihdlpglflfgpfjcifdjdjcckigekc”.
此模块是必需的:您不能仅仅将其从清单中丢弃,因为嵌入在您应用中的引擎会期望从清单中加载文件.
但是,应用程序运行时仅具有Chrome操作系统体系结构所需的组件. ARC Welder创建的Appsare only supported on Chrome OS.在任何其他平台上,都安装了共享模块,但未提供所需的文件,从而导致错误1.没有解决方案可以通过Web Store将您的应用程序部署到Chrome OS以外的任何其他设备.
您的错误#2源自Chrome尝试将您的应用作为共享模块加载,并且对此无效(没有“导出”键).您不能也不应该解决此问题-尝试将自己导入为共享模块是没有意义的.
至于为什么未修改的应用程序无法在虚拟Chrome操作系统中加载的原因-很难说,但是它可能在ARC Runtime不支持的体系结构上运行.需要有关如何设置虚拟机的更多详细信息.
标签:android,google-chrome-app,google-chrome-arc 来源: https://codeday.me/bug/20191010/1884491.html