ERR_UNKNOWN_URL_SCHEME on react native webview

时间:2019-06-28 02:00:41

标签: android ios react-native mobile webview

我正在使用react-native-webview开发一个应用。

当我单击带有

的链接时
<a href="sms:888888&body=Test Message">Click here</a>

我收到错误err_unknown_url_scheme。

谢谢

4 个答案:

答案 0 :(得分:1)

我在WebViews中的public function index() { $query = $this->Backups ->find('search', ['search' => $this->request->query]) ->contain(['Clients', 'BackupsClient']); $this->set('backups', $this->paginate($query)); $this->set('isSearch', $this->Backups->isSearch()); $clients = $this->Backups->Clients->find('list'); $this->set('clients', $clients ); $backups_client = $this->Backups->BackupsClient->find('list'); $this->set('backups_client', $backups_client ); } 链接上也遇到了类似的问题。我发现这是在react-native-webview上打开的issue。按照答案中的建议将mailtooriginWhitelist修改为显式列表对我没有帮助。但是我可以通过应用此fix来解决问题。 它为{[*]}属性提供了自定义实现。而我用

onShouldStartLoadWithRequest

答案 1 :(得分:0)

能够通过编辑webview参数来解决问题。

<WebView
    {...this.props}
    bounces={false}
    originWhitelist={["https://*", "http://*", "file://*", "sms://*"]}
    allowFileAccess={true}
    domStorageEnabled={true}
    javaScriptEnabled={true}
    geolocationEnabled={true}
    saveFormDataDisabled={true}
    allowFileAccessFromFileURLS={true}
    allowUniversalAccessFromFileURLs={true}
  />

答案 2 :(得分:0)

出于未知原因,即使使用覆盖onShouldStartLoadWithRequest的方法,Webview仍然对我崩溃了。

{p}的

版本11.0.0具有一个新选项react-native-webview,当设置为true时,它将打开在新标签页/窗口中打开的链接(例如setSupportMultipleWindows)现在提示您在系统浏览器中打开,而不是重新使用当前的WebView。

<a target="_blank">

触发电话的链接

<WebView
    // links that open in new tabs/windows will now prompt to open in the system browser
    setSupportMultipleWindows={true}
    // other props here
/>

请参见https://github.com/react-native-webview/react-native-webview/issues/1084#issuecomment-735048835

答案 3 :(得分:0)

我收到关于“mailto: 和 tel: 链接在 webview 中不起作用”的错误,对于我的情况,解决方法是在 webview 中添加此属性:

 <WebView
 // other props here
  originWhitelist={['http://*', 'https://*', 'intent://*']} 
 />