cordova - 如何监听 inAppBrowser 关闭事件

标签 cordova ionic-framework ionic2

以下是我目前正在使用的代码。我想了解如何收听 inAppBrowser 关闭事件?当某些人关闭 inAppBrowser 时,应用程序应显示某种警报消息。

根据 documentation 我必须使用 browser.close() ,但这不起作用。

import { Component } from '@angular/core';
import { NavController, NavParams, Platform, LoadingController } from 'ionic-angular';
import { InAppBrowser } from 'ionic-native';

@Component({
  selector: 'page-payment-information',
  templateUrl: 'payment-information.html'
})
export class PaymentInformationPage {

  constructor( public navCtrl: NavController, public navParams: NavParams, public platform: Platform, public loadingCtrl: LoadingController ) {
    this.platform = platform;
  }

  paymentForm(){
      let browser = new InAppBrowser('https://www.stackoverflow.com', '_blank', 'hidden=no,location=no,clearsessioncache=yes,clearcache=yes&enableViewportScale=yes');
      browser.close();
  }

}

最佳答案

您的代码中几乎没有错误。

documentation browser.hide() 不做你想做的事。

Hides an InAppBrowser window that is currently shown. Calling this has no effect if the InAppBrowser was already hidden.


_blank_system 替换它,因为 _blank 在 inAppBrowser 中打开。您将无法监听 close 事件。

现在,您可以订阅浏览器并监听它的事件,例如
//Events: loadstart, loadstop, loaderror, exit
browser.on('exit').subscribe(() => {
    console.log('browser closed');
}, err => {
    console.error(err);
});

关于cordova - 如何监听 inAppBrowser 关闭事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42322267/

相关文章:

javascript - 使用指令渲染星级评定系统

cordova - Ionic 2 的未签名 APK 无法安装在设备上

android - 检查设备上是否安装了 Google map 应用程序

javascript - 运行 Cordova Android 应用程序(插件)时 Assets 文件夹中出现错误

javascript - 在 inIonic 中使用范围 slider 显示数字时出现问题

ionic-framework - 是否可以在 ionic 4 警报中添加日期选择器

android - 相当于 Ionic 2 中的 setOnItemLongClickListener

javascript - Angular 2 Promise 不是在等待解决嵌套 Promise 吗?

ios - ionic IOS 图标不会复制到 ios 平台

ios - Cordova iOS : Add method call in AppDelegate. m