在Android应用程序抽屉中未显示PWA

在Android应用程序抽屉中未显示PWA,android,google-chrome,progressive-web-apps,Android,Google Chrome,Progressive Web Apps,我们的用户一直报告说,我们的渐进式Web应用程序没有显示在他们的应用程序抽屉中。我在运行谷歌Chrome 65的三星Galaxy S5和S6上复制了这个。我使用菜单“添加到主屏幕”,图标会显示在主屏幕上,但不会显示在“应用程序”抽屉或应用程序管理器设置屏幕上 这向我表明,我的PWA没有得到“WebAPK”又名“治疗”,但我一辈子都不知道为什么。根据谷歌的链接,Chrome59向所有用户推出了改进的A2HS 这是我的manifest.json文件,其中name、short\u name、scope

我们的用户一直报告说,我们的渐进式Web应用程序没有显示在他们的应用程序抽屉中。我在运行谷歌Chrome 65的三星Galaxy S5和S6上复制了这个。我使用菜单“添加到主屏幕”,图标会显示在主屏幕上,但不会显示在“应用程序”抽屉或应用程序管理器设置屏幕上

这向我表明,我的PWA没有得到“WebAPK”又名“治疗”,但我一辈子都不知道为什么。根据谷歌的链接,Chrome59向所有用户推出了改进的A2HS

这是我的
manifest.json
文件,其中
name
short\u name
scope
start\u url
更改为示例值

{
  "name": "Example",
  "short_name": "Example",
  "icons": [
    {
      "src": "icon.jpg",
      "sizes": "1024x1024",
      "type": "image/jpg"
    }
  ],
  "scope": "https://www.example.com/my-url/",
  "start_url": "https://www.example.com/my-url/",
  "display": "standalone",
  "background_color": "#626160",
  "theme_color": "#626160"
}

在您的情况下,您不会看到添加到主屏幕(A2HS)横幅,因为图标定义为image/jpg

无法安装站点:清单中不包含合适的 图标-需要至少144px的PNG格式,大小属性 必须设置,并且如果设置了purpose属性,则必须包含“any”

更多信息:

需要满足以下几个要求才能在

当你的应用程序符合要求时,Chrome会自动显示横幅 以下标准:

具有具有以下内容的web应用程序清单文件:

  • 短名称(在主屏幕上使用)
  • 名称(用于横幅)
  • 192x192 png图标(图标声明必须包括mime类型的image/png)
  • 加载的起始url
  • 是否在您的网站上注册了服务人员
通过HTTPS(使用服务工作者的要求)提供服务。遇到 由Chrome定义的站点参与启发式(这是定期进行的 更改)

从Chrome 68开始,您需要处理“beforeinstallprompt” 用户手势上的事件和调用提示符()以获取添加到主屏幕 (A2HS),它不会自动发生

要绝对确保获得WebAPK而不是快捷方式,请确保以下内容:

  • 您需要GSM核心才能作为WebAPK安装
  • Web应用程序清单可用
  • 在Web应用程序清单中提供大小合适的图标
  • 服务人员已成功注册
  • 具有获取事件的服务工作者
鉴于上述所有情况都正常,APK服务需要可用且可访问,因为APK是在服务器上生成的,并通过GMS Core安装。如果您没有internet连接,它可能会默认为主屏幕上的快捷方式

在哪里可以安装PWA?

PWA当前可安装在Android上:

  • 三星
  • 火狐
  • 歌剧
  • 加州大学
不久将在iOS、Windows 10、macOS和ChromeOS上提供

参考:

如何知道您是否拥有WebAPK或快捷方式?

  • 如果PWA在Android应用程序抽屉中,那么它就是一个WebAPK

  • 如果长按PWA的屏幕图标可以选择“卸载”,那么它就是WebAPK

  • 如果您只有一个“删除”选项,那么它就是一个快捷方式

测试您的PWA

测试时应使用的两个标志

chrome://flags/#allow-insecure-localhost

chrome://flags/#bypass-app-banner-engagement-checks

您可以使用
adb shell am start
,这有助于启动Chrome,同时启用两者,而无需通过用户界面。

即使根据Matija响应设置了所有内容,对于要安装的WebAPK,您仍然可以获得快捷方式。

这发生在今天2020年11月23日。 唯一的区别是我们使用了3G数据而不是WiFi

通过同一设备上的WiFi执行相同的过程,导致WebAPK安装。 谷歌可能会根据设备可用的连接速度来决定WebAPK与快捷方式。记住这一点


如果更多的人能够通过Chrome 86.0.4240.198确认Android 7.0版的这一观察结果,这将是非常棒的,
如果没有任何用户使用Chrome登录,那么在使用Chrome开发工具->应用程序->清单->添加到主屏幕时,会出现一条消息(“站点无法安装”)。(我只是使用Chrome的面向用户菜单来显示A2HS。)你完全正确,我的问题是有一个JPG图标,而我本应该有一个PNG图标。特别不幸的是,灯塔没有在其PWA审计中标记这一点。我在这上面有一个bug。我正在为wordpress博客使用SuperPWA插件。对于华为P9和维梧V4等部分手机,PWA是作为快捷方式安装的。以及一些模式,如华为Rio L01,它安装为WebApk;对于XioMi手机的chrome浏览器,没有任何安装PWA的提示。我的目标是在所有类型的Android设备上安装PWA作为WebAPK。我如何解决这个问题?如果用户没有登录他们的google帐户,PWA将不会安装。它将另存为书签。因此,请确保用户已登录。