当我从 Safari/Chrome 重定向到 AppStore 时,有没有办法处理
在 App 中打开弹出窗口上的
Cancel
按钮?
场景是这样的:用户收到一条下载应用程序的消息。这是一个浏览器链接。在该浏览器链接上检查它是android还是ios?如果 iOS 重定向到
App Store
或其他。
这可以在 Android 上无缝运行。但另一方面,iOS 会向用户显示一个弹出窗口,要求用户切换并在另一个应用程序中打开天气。
现在我的客户要求我处理
Cancel
按钮。
那么,有没有办法通过 JavaScript 来处理这个问题?
代码看起来像这样:
if($rootScope.$device.Android()) {
window.location = appConfig.PLAYSTORE_LINK;
return;
}
if($rootScope.$device.iOS()) {
window.location = appConfig.APPSTORE_LINK;
return;
}
P.S.: 不过,我相信这是操作系统级别的弹出窗口。处理此弹出窗口可能不是可能性或可行的解决方案。
你是对的:这是苹果控制的用户界面元素。您无法以编程方式操纵此警报。
弹出窗口是渲染阻塞的,因此添加一个 setTimeout 以及用户单击取消时要设置的操作应该没问题。
如果用户单击“打开”,他们将被带到应用程序商店。如果用户单击取消,setTimeout 将处理取消操作。
window.location.href = "{{$primary_redirect}}";
setTimeout(()=>{
// action to take if the user cancels.
}, 3000)
这是针对苹果怪异方式的一个黑客解决方案,但它