当将地址输入 Android 设备上的 Chrome 浏览器(当前在 Android 9 上使用 Chrome 76)时,我的 PWA 可以按预期工作。加载站点后,我会收到 beforeinstallprompt 事件并显示我的安装消息。但是,如果从短信中的超链接打开该网站,那么在点击页面之前我不会收到该事件。这是期待吗?有人处理过这个问题吗?
最佳答案
如上所述here ,要求应用程序在 beforeinstallprompt
触发之前“满足用户参与启发式”。由于用户来自外部链接,浏览器要求用户证明他们想要与他们登陆的应用程序进行交互;他们不只是点击一个链接然后登陆那里。手动输入地址足以表明参与度:他们是自愿来到该网站的。
这就像从外部链接打开的 YouTube 视频在用户与其交互之前不会有声音一样。浏览器会阻止声音播放,除非用户表明他们想要它,因为未经请求的自动播放声音对用户来说是一个常见的烦恼。
关于javascript - 如果从短信中的链接打开站点,则在触摸之前不会触发 beforeinstallprompt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57565046/