Depuis @Shiben a demandé, ce que je l'ai fait pour le résoudre.
-En votre app.component.ts faire quelque chose comme:
export class MyApp {
rootPage:any = HomePage;
firebase : any;
constructor(public platform: Platform,
public statusBar: StatusBar,
public splashScreen: SplashScreen,
private _firebase: Firebase,
public alertCtrl: AlertController) {
platform.ready().then(() => {
(your things)
this.firebase = _firebase;
this.initFirebase();
this.firebase.setBadgeNumber(0);
});
}
Et c'était mon initFirebase():
initFirebase(){
this.firebase.grantPermission();
this.firebase.onTokenRefresh()
.subscribe((token: string) => localStorage.setItem("pushToken", token))
this.firebase.onNotificationOpen()
.subscribe((notification) => {
let alert = this.alertCtrl.create({
title: 'New Notification',
subTitle: "Your notification",
buttons:['OK']
});
alert.present();
});
}
-En yor index.html insérer quelque chose comme ça (vous avez obtenu de firebase)
<script src="https://www.gstatic.com/firebasejs/3.9.0/firebase.js"></script>
<script>
// Initialize Firebase
var config = {
apiKey: "your key",
authDomain: "your domain",
databaseURL: "your url",
projectId: "your projid",
storageBucket: "your storagebucket",
messagingSenderId: "your messageid"
};
firebase.initializeApp(config);
</script>
Je l'ai fait il y a longtemps et quelque chose peut-être changer. Cela peut être déprécié ou ne pas être les meilleures pratiques, cependant, j'espère que cela peut vous prendre dans la bonne direction.