2016-06-21 18 views
8

Nella mia app Ionic 2 (TypeScript), dove utilizzo plug-in, ad esempio il plug-in Camera da ionic-native che funziona correttamente. Ora voglio usare BackgroundMode plugin: https://github.com/katzer/cordova-plugin-background-mode. Ho letto il file README, ho eseguito l'installazione come descritto.Utilizzo di un plug-in Cordova di terze parti in Ionic 2 con TypeScript

In Utilizzo si dice che il plug-in può essere utilizzato in questo modo:

cordova.plugins.backgroundMode.enable(); 

Nel mio IDE (Atom), quando digito che, si dice che non riesce a trovare Cordova.

Ho cercato su google un sacco di plugin Cordova e ionico 2 e in alcuni casi utilizzano navigator.somePlugin.someFunction() (l'oggetto window.navigator se ho capito bene), ma che anche non funziona per me. Ho fatto un console.log nella mia app e dispositivo Chrome ispettore mostra questo:

JSON.stringify(window.navigator, null, 2) 
{ 
    "app": {}, 
    "camera": { 
    "DestinationType": { 
     "DATA_URL": 0, 
     "FILE_URI": 1, 
     "NATIVE_URI": 2 
    }, 
    "EncodingType": { 
     "JPEG": 0, 
     "PNG": 1 
    }, 
    "MediaType": { 
     "PICTURE": 0, 
     "VIDEO": 1, 
     "ALLMEDIA": 2 
    }, 
    "PictureSourceType": { 
     "PHOTOLIBRARY": 0, 
     "CAMERA": 1, 
     "SAVEDPHOTOALBUM": 2 
    }, 
    "PopoverArrowDirection": { 
     "ARROW_UP": 1, 
     "ARROW_DOWN": 2, 
     "ARROW_LEFT": 4, 
     "ARROW_RIGHT": 8, 
     "ARROW_ANY": 15 
    }, 
    "Direction": { 
     "BACK": 0, 
     "FRONT": 1 
    } 
    }, 
    "splashscreen": {} 
} 

La mia domanda è:

Come posso utilizzare il plug-in BackgroundMode ionici 2 TS? Io non so nemmeno come includere nel mio progetto ...

risposta

12

Proprio come dice AGrandthere, è possibile installarlo con:

ionic plugin add cordova-plugin-background-mode 

quindi includere questa linea dopo le importazioni:

declare var cordova:any; 

e utilizzarlo quando la piattaforma è pronta:

platform.ready().then(
    () => { 
     console.log("MyApp::constructor platform.ready"); 
     cordova.plugins.backgroundMode.setDefaults({ 
      title: 'My App Name', 
      text: 'Active in background...'); 
     cordova.plugins.backgroundMode.enable(); 
    } 
); 
+1

si può spiegare di più si prega di w qui dovrebbe andare "dichiarare var cordova: any" ??? Non capisco, né il prossimo codice "platform.ready() ....." Grazie in anticipo !! –

Problemi correlati