簡體   English   中英

Cordova inappbrowser將URL重定向到僅Android系統瀏覽器

[英]Cordova inappbrowser redirect url to system browser Android only

在夏季,問題是:如何使用inappbrowser,如何使用系統瀏覽器加載外部url,並阻止它們顯示在inappbrowser中?

更多詳情

我正在使用內置瀏覽器來顯示客戶門戶網站,但是該門戶上有外部鏈接要顯示在系統瀏覽器中。

我要執行的操作是檢測外部URL,在系統瀏覽器中打開外部鏈接,然后確保在按下外部鏈接之前,inappbrowser仍顯示相同的頁面。

我正在使用loadstart事件檢測URL,然后使用window.open(url,'_system'); 打開系統瀏覽器。 問題在於,當系統瀏覽器關閉外部頁面時,該瀏覽器中還會顯示該頁面。

因此,最初在加載系統瀏覽器后,我用我想顯示的URL再次初始化了內置瀏覽器。 很好,但是我松開了所有會話歷史記錄,下次按下后退按鈕時,關閉瀏覽器。

我嘗試的下一件事是使用執行腳本功能:

    app.inAppBrowserRef.executeScript({
        code: "window.open('" + overrideUrl + "', '_blank');"
    }, function () {
        //alert("Redirected!");
    });

這會將鏈接加載到系統瀏覽器中,並且關閉系統瀏覽器時顯示的頁面正確。 問題在於所顯示的視圖未運行我的loadstart代碼,因此,如果單擊相同的外部鏈接,它現在將加載在同一視圖中,而不是系統瀏覽器中。 另外,如果我進行了一些調試,則看不到任何證據表明我在查看器中顯示內容,或者它沒有我的代碼。 我也嘗試執行window.location = overrideUrl,這也不起作用。

奇怪的是,當我使用chromecustomtab插件而不是系統瀏覽器打開url時,executeScript會按要求工作。 因此,這與在系統瀏覽器打開時運行執行腳本有關。 如果設備上未安裝chrome,我需要支持系統瀏覽器。

這肯定是一個普遍的問題,所以真的希望有解決方案。

提前致謝!

問題是當系統瀏覽器打開不正確的瀏覽器時會松開其事件。我正在打開一個新問題,該問題更相關。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM