2017-06-13 48 views
3

我在Xcode中爲我的應用程序設置了URL Type。出於問題的目的,我已經刪除了實際的包標識符。iOS URL類型在使用react-native-safari-view時不起作用React Native

enter image description here

我的項目捆綁標識符是com.domain.foo

我有一個簡單的網頁,只是重定向,用三種不同的方式:

window.onload = function() { 
    window.location.href="myschemereceiver://foo=bar"; 
    window.location="myschemereceiver://foo=bar"; 
    window.open("myschemereceiver", "_self"); 
} 

然而,當我使用this包加載內嵌的Safari瀏覽裏面的URL,它不重定向到我應用程序。

當我在Safari中加載頁面時,它會重定向到我的應用程序。

編輯

每當我試着重定向到不存在的URL類型,Safari瀏覽器將引發錯誤(預計)。將其更改爲有效類型時,Safari不會執行任何操作,只會呈現白色屏幕。

+0

URL是https嗎? – MattyK14

+0

我重定向的URL是'https'。 – Dan

+0

檢查javascript是否有效。發出警報並查看結果 – 2017-06-28 12:09:50

回答

2

Safari View Controller不允許通過點擊其中的URL來打開應用程序。要解決此問題,您需要使用WebView。

但是,如果直接使用myschemereceiver://foo=bar調用WebView(因爲在Safari瀏覽器地址欄中直接輸入URL不會啓動應用程序),您的應用程序將不會啓動。當用戶點擊Safari瀏覽器視圖控制器內部時,您需要啓動帶有網站的WebView,用戶應該點擊另一個鏈接,或者您需要使用該網站內的JavaScript來打開您的應用程序。

有關適用於通用鏈接的應用和瀏覽器支持的更多信息,請參閱here

相關問題