【发布时间】:2021-06-01 04:37:34
【问题描述】:
在我的 expo react native 应用程序中,用户被定向到 WebBrowser 中的 URL。我希望能够监听用户何时关闭/关闭 WebBrowser,然后执行一个函数。这可能吗?
【问题讨论】:
标签: javascript typescript react-native expo
在我的 expo react native 应用程序中,用户被定向到 WebBrowser 中的 URL。我希望能够监听用户何时关闭/关闭 WebBrowser,然后执行一个函数。这可能吗?
【问题讨论】:
标签: javascript typescript react-native expo
我通过使用authentication session (openAuthSessionAsync) 而不是标准的网络浏览器 (openBrowserAsync) 解决了这个问题。使用身份验证会话会返回一个承诺,并且系统每秒都会检查窗口是否已被用户关闭。如果是,那么该承诺将通过{ type: 'cancel' } 解决。
【讨论】:
使用 openBrowserAsync :
const resp = await WebBrowser.openBrowserAsync(url);
if (resp && resp.type === "cancel") {
console.log('Browser closed by user');
}
【讨论】: