一旦安装了PWA,请关闭浏览器窗口并打开PWA。

时间:2018-12-16 07:17:40

标签: progressive-web-apps

我让Chrome在Android上安装我的PWA-安装完成后,我想自动关闭从中安装该浏览器的浏览器窗口,然后打开PWA(因此用户不会继续在浏览器窗口中以为他们是重新使用PWA)-这可能吗?

4 个答案:

答案 0 :(得分:2)

我在装有Chrome的Android上遇到了此问题。有所作为的更改是在链接中添加“ target ='_ blank'”。看起来像:

$Pattern

十秒超时是为了让Android有时间在首页上设置该应用。 我早些时候做了调整。可能我可以删除它? 但是设定目标是使这项工作奏效的原因。

该应用会在Chrome顶部打开,从而将其遮盖。 因此,不是立即需要关闭浏览器,而是建议关闭。

答案 1 :(得分:1)

基于此博客文章:

  

安装PWA后,它将显示在主屏幕中的   设置中的应用启动器,以及其他任何一流的公民应用   操作系统,包括有关系统中电池和空间的信息。

当用户从主屏幕打开应用程序时,会有一个跟踪事件。这意味着用户单击了该应用程序的图标,或者在具有WebAPK支持的Android上,还单击了指向PWA范围的链接,需要关闭浏览器。

start_url: '/?utm_source=standalone&utm_medium=pwa'

此外,以下脚本为我们提供了一个布尔值,说明用户当前是否处于浏览器(true)或独立应用程序模式(false)

var isPWAinBrowser = true;
// replace standalone with fullscreen or minimal-ui according to your manifest
if (matchMedia('(display-mode: standalone)').matches) {
     // Android and iOS 11.3+
     isPWAinBrowser = false;
} else if ('standalone' in navigator) {
     // useful for iOS < 11.3
     isPWAinBrowser = !navigator.standalone;
}

答案 2 :(得分:1)

我一直在寻找类似的解决方案,但尚未找到一种解决方法。我尝试描述到目前为止的发现:


关闭浏览器窗口

answer window.close()中所述的

只能在脚本自身打开的窗口/选项卡上调用。那里正在讨论一些可能的解决方法。


安装后立即打开PWA:

Google在其WebApk Fundamentals Article中对其进行了如下描述:

  

在Android上安装渐进式Web应用程序时,它将为该应用程序范围内的所有URL注册一组意图过滤器。当用户单击应用程序范围内的链接时,将打开该应用程序,而不是在浏览器选项卡中打开。

我希望从仍然打开的浏览器窗口中安装/添加到主屏幕后,它也能正常工作。

基于在两台Android设备上进行的测试,看来此时用户必须从主屏幕一次手动打开PWA ,以便chrome / android解释Web应用manifest.json的范围,旨在独立打开页面。

这很可悲,甚至iOS似乎也处理不了这种情况。

也许我忽略了Google文章中的内容?我也没有完全理解android的intent API-所以也许有某种方法仍然可以实现(?)

答案 3 :(得分:0)

在新版本的 chrome 中,在 android 中安装后,它会将“范围”中的所有链接关联到 PWA 应用程序,如果您尝试在 chrome 浏览器中打开一个链接,它会直接在应用程序中打开。 希望能回答你的问题