使用PWA源作为混合应用程序 - Android

时间:2017-09-25 10:26:41

标签: cordova ionic-framework

我们已成功使用Ionic 2完成了我们的PWA,现在我想将相同的源转换为Andorid Lite版本(混合应用程序)以在Appstore中发布。

我添加了android平台

  

cordova平台添加android

在我的config.xml android平台版本中

  

AndroidManifest.xml min&最大sdk版本为   机器人:的minSdkVersion =" 16"机器人:targetSdkVersion =“23”

使用

在我的Android设备(Mashmallow版本)上运行我的应用程序
  

离子cordova运行android --device

使用我的Android Studio,我发现日志为

  

预期的本机库版本号“60.0.3112.116”,实际原生

     

库版本号“60.0.3112.116”/ chromium:[INFO:CONSOLE(26)]   "服务工作者错误:",来源:   file:///android_asset/www/index.html(26)

我无法加载我的应用程序,并且index.html继续加载,屏幕上看不到任何内容。同样来自caniuse.com我开始知道服务工作者只在Chrome版本61中支持android。

有人可以帮助我!

的问候, 真

3 个答案:

答案 0 :(得分:2)

混合应用程序不支持服务工作者,因为您的网页是通过file://协议提供的,而服务工作者只能使用https://协议。见here

  

出于安全原因,服务工作者仅运行HTTPS。有   修改后的网络请求在中间攻击中对人开放   非常糟糕。

答案 1 :(得分:0)

您不应该在混合应用程序中需要服务工作者,因为服务工作者提供的所有服务都可以在应用程序上完成。服务工作者特定于PWA,如果构建本机/混合应用程序,应删除/隐藏。 我建议您阅读Using Ionic/Cordova app sources as PWA以了解如何将pwa Ionic实现切换为本机应用程序,反之亦然。

答案 2 :(得分:0)

如果只是想在Play商店中被发现,则可以使用网络视图包装您的应用,然后在启动时加载PWA的HTTPS URL。那应该“解决”问题。