2016-10-11 9 views
2

Wenn ich Plugins Liste (cordova plugin list), wird dort aufgelistet, aber wenn ich auf einem Android-Gerät meinen Code ausführen bekomme ich diese Meldung in der Konsole (aus Chrom Remote-Debugger): Native: InAppBrowser is not installed or you are running on a browser. Falling back to window.open, all instance methods will NOT work.Cordova InAppBrowser Plugin nicht installiert ist

Ich habe die neueste Version von ionic-cli.

ich ein Beispielprojekt hier aufgenommen haben: https://github.com/golear91/ionic2-broken-inappbrowser

ich im Grunde:

  • verwendet, um die cli ein Registerkarten Projekt "Start"
  • einen einzelnen Anbieter (mit Generator) hinzugefügt
  • Provider zu einer meiner Registerkarten hinzugefügt
  • cordova plugin add cordova-plugin-inappbrowser
  • importieren & versuchen zu verwenden InAppBrowser

Ich habe versucht, mit dem Plug-In zu entfernen und neu zu installieren, ohne Erfolg.

Irgendwelche Ideen für was falsch ist?

+0

Nun, im Auge behalten, dass kein Fehler ist. Es ist nur eine Warnung, dass es wahrscheinlich nicht im Browser funktioniert. Nur das. – developer033

+0

Ich weiß, dass es in einem Browser nicht funktioniert, ich teste es jedoch auf einem Android-Gerät, so dass es diese Nachricht nicht ausspucken sollte. (Die erwähnten Instanzmethoden funktionieren nicht und ich brauche sie, weshalb ich die Frage gestellt habe). Ich habe es vorher zum Laufen gebracht, ohne den Fehler auszuspucken, aber ich weiß nicht, was ich dieses Mal falsch mache. –

Antwort

3

Verwendung ionischer-native Plugins muss das Gerät „bereit“

Für Ionic2 mit kantigem kann dies erreicht werden Platform durch den Import (mit allem, was sonst) zu welcher Komponente/Service Sie planen, das ist auf Verwendung warten auf ionen-natives Plugin von.

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

und dann wartet auf der Plattform, bereit:

@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")); 
    }); 
    } 
} 
+0

, aber wo diesen Code hinzufügen? Verbessern Sie Ihre Antwort auf, wie dies zu tun ist –

+1

@AlokRajasukumaran Sie müssen die Plattform zu welcher Komponente/Dienst, den Sie verwenden möchten, die ionischen nativen Plugin aus importieren (zu der Antwort hinzugefügt). –

+0

Ja, ich habe es behoben. Danke. –

Verwandte Themen