打开inAppBrowser'_self'

时间:2019-07-30 01:43:39

标签: android cordova ionic-framework cordova-plugins ionic4

我已经构建了一个Ionic 4应用程序,该应用程序使用inAppBrowser组件在应用程序流程的某个位置打开了一个外部网站。

该应用程序运行良好,但是在实际的Android手机上进行测试时崩溃并关闭了该应用程序。 浏览器,iOS,模拟器...一切正常。调用this.browser.create(url, '_self')时,只有真正的Android设备会崩溃。

我已经测试了所有东西。就像将代码放在应用程序工作流的不同模块和不同部分中一样。 还尝试grep设备的Java输出,但它根本不返回任何错误消息。

这是我最后一次尝试,非常简单的方法。但它也崩溃了:

  initializeApp() {
    this.platform.ready().then(() => {
      this.statusBar.styleDefault();
      this.splashScreen.hide();

      const browser = this.iab.create('https://example.com/', '_self');

      browser.on('loadstop').subscribe(event => {
        // this.splashScreen.hide();
      });
    });
  }

我已正确导入模块,并且在配置文件中还有<allow-navigation>标签。

2 个答案:

答案 0 :(得分:0)

cordova webview的问题检查它是否已安装并正常工作

ionic cordova plugin add cordova-plugin-ionic-webview

或传递由_blank插入的参数_self

答案 1 :(得分:0)

当...时,我发现应用崩溃了两次 1)如果您向In App Browser中传递null或未定义的url,并且目标是_self,因此找不到它并且应用程序已崩溃

您需要通过 _system

OR

2)您必须指定应用程序不会崩溃的选项

像这样

让浏览器= this.inApp.create(url,'_ self','location = no,hardwareback = no,clearsessioncache = yes');它有效