我使用WebView和公司网站的初始URL创建了一个React-native应用程序(在android中测试)。 我希望用户单击带已发送通知中包含预期启动URL的OneSignal推送通知时,能够重定向到特定网站的产品页面(例如https://www.test.com/product/hoodie-with-zipper/)。问题是,我希望用户使用WebView App而不是浏览器打开URL。
到目前为止,我已经实现和测试的功能:
已完成并经过测试的WebView(到目前为止没有问题)
在本地实施和测试的深层链接(使用“ myapp://”的android方案,到目前为止没有问题)
针对React-native及其Firebase需求实现了OneSignal推送通知SDK(到目前为止没有问题)
正如我在第2点中提到的那样,我已经尝试并成功地使用android方案“ myapp://”实现了深层链接。但是,当我尝试实现“ https://”的android方案时,OneSignal推送通知中的启动URL而是通过浏览器而非我的WebView应用程序打开了。
我希望用户单击带已发送通知中包含预期启动URL的OneSignal推送通知时能够重定向到特定网站的产品页面(例如https://www.test.com/product/hoodie-with-zipper/),但是使用React-native WebView而不是浏览器打开。
^那么,我应该怎么做呢? 预先感谢。
答案 0 :(得分:0)
您应该自己处理此问题,方法是通过通知中的additional data传入URL。然后,在您的应用中,您应该打开一个指向指定URL的Web视图。当点击通知时,仪表板上的Launch URL功能或REST API的url字段会自动在移动设备上打开Web浏览器。如果您想在应用程序而不是浏览器中打开URL,则需要发送包含可被应用程序SDK读取的自定义数据的通知。如果您使用我们的仪表板发送通知,则发送通知选项可让您包括要与通知一起发送的其他数据。如果您使用我们的API发送通知,则可以将“数据”字段设置为额外自定义数据的JSON对象哈希。例如,您可以将targetUrl
设置为键,将https://google.com设置为值。然后,在您应用的代码中,从NotificationOpened回调中的AdditionalData中读取targetUrl值(名称取决于所使用的OneSignal SDK)。