2016-05-23 88 views
2

我的小科多瓦應用程序非常簡單,在檢查連接後打開網站的URL(例如http://www.example.com)。 我希望在應用程序中顯示所有的網址/網站。Cordova InAppBrowser.open。鏈接在safari上打開,而不是在應用程序內部打開

主要問題是在iOS上只打開應用程序中的第一頁,並且在Safari瀏覽器中打開任何其他被點擊/觸摸的鏈接。

在config.xml

我已經設置

<access origin="*" /> 

而在index.js我加

onDeviceReady: function() { 
     window.open = cordova.InAppBrowser.open; 
     if (navigator.connection.type == Connection.NONE) { 
     navigator.notification.alert('An internet connection is required to continue'); 
     } else { 
      setTimeout(function(){window.open('http://www.example.com', '_self', 'location=no')} , 3000); 

     } 
    }, 

我已經嘗試過使用我的代碼,而無需inappbrowser(無第二線前面的代碼和沒有插件)。 我已經刪除並閱讀了平臺。 我重新創建了整個應用程序。 我檢查了應用程序(科爾多瓦平臺檢查)。

在anrdoid和blackberry上它可以工作,因爲我需要它與應用程序內的導航(有和沒有inappbrowser)!

科爾多瓦6.1.1 的Mac mini - OSX埃爾卡皮坦10.11.5

回答

0

我相信作爲概括這裏,這是通過沒有正確設置在config.xml中允許意圖的href屬性造成的:

https://issues.apache.org/jira/browse/CB-10859

在你的config.xml文件中尋找此聲明:

<allow-intent href="*" />

而且用更具體的意圖津貼像替換它:

<allow-intent href="tel:*" /> 
<allow-intent href="sms:*" /> 
<allow-intent href="mailto:*" /> 
<allow-intent href="geo:*" /> 

這應該涵蓋大多數的意圖。

+0

我添加了具體的網站/網址的意圖,並增加了更多的權限。 從scracth重建項目並複製舊項目中的文件後的所有內容。 它工作了一段時間後投入:)。謝謝 – Trueliarx

+0

@Trueliarx不用擔心...不要忘記投票:D – greaterKing

+0

嗨,我有同樣的問題。你介意分享你的改變嗎?也許從你的config.xml文件發佈部分。非常感激! –

相關問題