2017-10-05 88 views
0

我在過去的2天內遇到了離子火燒爐模塊(https://ionicframework.com/docs/native/firebase/)的問題。離子火石標記令牌總是空並且沒有令牌刷新

我不明白爲什麼我的火力令牌常是NULL在下面的代碼段在app.component.ts

this.platform.ready().then(() => { 
    this.firebase.getToken().then(firebaseTokenSuccess).catch(firebaseTokenFailure); 

    this.firebase.onTokenRefresh().subscribe(firebaseTokenRefresh); 

    function firebaseTokenRefresh(tkn) { 
    return alert("New token received: " + JSON.stringify(tkn)); 
    } 

    function firebaseTokenSuccess(tkn) { 
    return alert("Token access success: " + JSON.stringify(tkn)); 
    } 

    function firebaseTokenFailure(e) { 
    return alert("Token access failure: " + e.toString()); 
    } 
}); 

如果我在準備塊的beggining有grantPermission()我的令牌成爲一個空字符串

我跑以下命令來安裝我的插件:

$ ionic plugin rm cordova-plugin-firebase 

$ npm install @ionic-native/push --save 

這裏是我的插件列表:

$ ionic plugins       
com.googlemaps.ios 2.4.0 "Google Maps SDK for iOS" 
cordova-android-play-services-gradle-release 1.1.1 "cordova-android-play-services-gradle-release" 
cordova-plugin-compat 1.2.0 "Compat" 
cordova-plugin-console 1.1.0 "Console" 
cordova-plugin-device 1.1.6 "Device" 
cordova-plugin-facebook4 1.9.1 "Facebook Connect" 
cordova-plugin-file 4.3.3 "File" 
cordova-plugin-file-transfer 1.6.3 "File Transfer" 
cordova-plugin-firebase 0.1.24 "Google Firebase Plugin" 
cordova-plugin-googlemaps 1.4.5 "cordova-googlemaps-plugin" 
cordova-plugin-inappbrowser 1.7.1 "InAppBrowser" 
cordova-plugin-splashscreen 4.0.3 "Splashscreen" 
cordova-plugin-statusbar 2.2.3 "StatusBar" 
cordova-plugin-whitelist 1.3.2 "Whitelist" 
ionic-plugin-keyboard 2.2.1 "Keyboard" 

這裏是我的項目結構:

$ tree -L 1 
. 
├── appli_dev.keystore 
├── bower_components 
├── build.gradle 
├── config.xml 
├── GoogleService-Info.plist 
├── google-services.json 
├── hooks 
├── init.sh 
├── ionic.config.json 
├── node_modules 
├── package.json 
├── package-lock.json 
├── platforms 
├── plugins 
├── README.md 
├── resources 
├── src 
├── tsconfig.json 
├── tslint.json 
└── www 

編輯:Iadded它給我下面的字符串{}

感謝您的閱讀:)

編輯該行alert(JSON.stringify(this.firebase))

我發現它是一種已知的但是在firebase API中。我不得不更新我的包git倉庫的HEAD

回答

0

嘗試是在離子2

import { Platform } from 'ionic-angular'; 
import { Firebase } from '@ionic-native/firebase'; 

constructor(public platform: Platform,private cordovaFirebase: Firebase) { 
    platform.ready().then(() => { 
    StatusBar.styleDefault(); 
    Splashscreen.hide(); 
    this.cordovaFirebase.grantPermission(); 
    this.cordovaFirebase.getToken().then(token => { 
     console.log("token....",token) 
    }).catch(error => console.log(error)); 
    }); 
} 
+0

代碼如果照你說的,我有以下生成錯誤'住宅「styleDefault」不上式「的typeof存在StatusBar''和'無法找到名稱'Splashscreen''。另外還有一點是,我不能使用console.log,但它一直是這種情況(我已經使用-c選項) – Biboozz

+0

關於兩行狀態欄和啓動畫面的註釋 –

+0

與之前的空字符串相同。 – Biboozz