【问题标题】:Ionic can't open webpage in system browser离子无法在系统浏览器中打开网页
【发布时间】:2016-05-29 23:44:58
【问题描述】:

我正在尝试将系统网络浏览器打开到特定页面,但我根本无法正常工作。我已经安装了cordova-plugin-inappbrowser 1.2.1,为了打开系统浏览器,我拨打了以下电话window.open("https://google.com","_system")。发生的情况是,首先什么都没有发生,几秒钟后,页面显示在我的应用程序顶部(在应用程序内),无法关闭页面。如何打开系统浏览器而不是在同一个应用中打开链接?

【问题讨论】:

  • 也许你可以尝试在设备就绪回调中使用cordova.InAppBrowser.open("https://google.com","_system", 'location=yes')

标签: cordova ionic-framework


【解决方案1】:

我目前也在开发一个 cordova 应用程序。我还添加了 cordova-plugin-inappbrowser (1.2.1)。 有了这个插件,你可以打开

调用标准页面,例如“www.google.com”

window.open("www.google.com", "_system", "location=yes");

经过应用可用性检查后的社交媒体页面,如 facebook、twitter 等

使用上述命令,应用程序会在我的浏览器的新窗口/选项卡中打开链接。

您在哪里测试了您的代码?在您的 PC 或实际设备上的浏览器中?设备是否安装了正常运行的浏览器应用程序?

【讨论】:

    【解决方案2】:

    不知道你的问题有没有解决,最近在我的项目中使用。

    1. cordova插件添加cordova-plugin-inappbrowser(版本为1.4.0);
    2. 控制器:window.open(partInfo.partner.link, '_system', 'location=yes');
    3. 安装后检查android.json和config.xml文件是否配置成功;
    4. 另外,如果你通过 Android Studio 构建项目,你最好在 Android -> java -> org.apache.cordova 中检查这个插件

    【讨论】:

    • partInfo.partner.link 是您的目标链接
    【解决方案3】:
    $scope.openWebBrowser = function() {
        var iabRef = null;
        document.addEventListener("deviceready", onDeviceReady, false);
        // Global InAppBrowser reference
        function iabLoadStart(event) {
            // alert(event.type + ' - ' + event.url);
        }
    
        function iabLoadStop(event) {
            // alert(event.type + ' - ' + event.url);
            // spinnerplugin.hide();
        }
    
        function iabLoadError(event) {
            // alert(event.type + ' - ' + event.message);
        }
    
        function iabClose(event) {
            // alert(event.type);
            iabRef.removeEventListener('loadstart', iabLoadStart);
            iabRef.removeEventListener('loadstop', iabLoadStop);
            iabRef.removeEventListener('loaderror', iabLoadError);
            iabRef.removeEventListener('exit', iabClose);
        }
    
        function onDeviceReady() {
            // spinnerplugin.show();
            // var sedlId = localStorage.getItem('sedlId');
            // var userId = localStorage.getItem('userId');
            // iabRef = window.open('http://xyz/xyz.php?schedule_id=' + sedlId + '&user_id=' + userId + '', '_blank', 'location=no,toolbar=no');
            iabRef = window.open('http://xyz/xyz.php?', '_blank', 'location=no,toolbar=no');
            iabRef.addEventListener('loadstart', iabLoadStart);
            iabRef.addEventListener('loadstop', iabLoadStop);
            iabRef.removeEventListener('loaderror', iabLoadError);
            iabRef.addEventListener('exit', iabClose);
            iabRef.addEventListener('loadstart', function(event) {
                // var checkurlstring = event.url;
                // var checkbookid = checkurlstring.substring(20, 100);
                // localStorage.setItem('bookId', checkbookid);
    
                if (event.url.match("mobile/close")) {
                    iabRef.close();
                    // $state.go('app.bordingUserPg');
                }
            });
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多