未安装Cordova InAppBrowser插件

时间:2016-10-11 20:04:01

标签: angular typescript ionic2

当我列出插件(cordova plugin list)时,它列在那里,但当我在Android设备上运行我的代码时,我在控制台中收到此消息(来自chrome远程调试器): Native: InAppBrowser is not installed or you are running on a browser. Falling back to window.open, all instance methods will NOT work.

我有最新版本的ionic-cli。

我在这里添加了一个示例项目:https://github.com/golear91/ionic2-broken-inappbrowser

我基本上:

  • 使用cli“启动”标签项目
  • 添加了一个提供商(使用生成器)
  • 将提供商添加到我的某个标签
  • cordova plugin add cordova-plugin-inappbrowser
  • import&尝试使用InAppBrowser

我尝试删除并重新安装使用该插件无济于事。

对于什么是错误的任何想法?

2 个答案:

答案 0 :(得分:4)

离子本机插件的使用必须等待设备“准备好”

对于带有Angular的Ionic2,可以通过将Platform(包含其他所有内容)导入到您计划使用离子本机插件的任何组件/服务来实现。

import { Injectable } from '@angular/core';
import 'rxjs/add/operator/map';
import { InAppBrowser } from 'ionic-native';
import { Platform } from 'ionic-angular';

然后等待平台准备就绪:

@Injectable()
export class Service() {
   constructor(public platform: Platform) {
     this.init()
   }
   init() {
     this.platform.ready().then(() => {
       let browser = new InAppBrowser('https://ionic.io', '_system');
       browser.on("loadstop").subscribe(()=> console.log("loadstop"));
     });
   }
}

答案 1 :(得分:0)

添加插件/ android.json和plugins / ios.json

"cordova-plugin-inappbrowser": {}

这对我有用。

我希望能帮助你。

问候。