簡體   English   中英

Ionic Firebasex 不能在后台運行 (iOS)

[英]Ionic Firebasex don't work in background (iOS)

我正在使用 Ionic3 並使用 FirebaseX Cordova 插件(因為 firebase 插件它根本不工作),但是當應用程序處於前台時(打開應用程序時)另一個應用程序)通知不顯示...當我打開應用程序時,消息進入應用程序(不是通知)...

我正在使用作者示例(僅更改了捆綁 ID,因此我可以注冊為 Firebase 項目)

我使用付費開發者賬號,我定義了一個 APN,上傳到 firebase 等。

在功能中激活遠程通知(推送和后台)

但是還是...

奇怪的是,當應用程序打開時,它在日志中顯示:

2019-10-25 11:20:50.152424-0300 FirebaseX Ionic 3 示例[560:180512] FCM 直接通道 = true

當應用程序進入后台時,登錄信息顯示:

2019-10-25 11:20:50.152424-0300 FirebaseX Ionic 3 示例 [560:180512] FCM 直接通道 = false

當我再次打開應用程序時,它又恢復為,並收到通知!

我知道 FCM 是 Firebase Cloud Messagin,所以......但我不知道為什么它會變成

請幫忙! 謝謝!

我找到了解決方案。 也許它可以幫助某人...現在使用FirebaseX Cordova 插件您需要明確請求許可(使用舊的 firebase cordova 插件,自動詢問...)

插入此代碼:

this.firebasePlugin.grantPermission(function(hasPermission){
    console.log("Permission was " + (hasPermission ? "granted" : "denied"));
});

就是這樣(如果用戶說“是”!)

在 firebasex cordova 插件中,您必須像這樣請求許可。

如果 hasPermission() 返回 false,您只能調用 grantPermission():

window.FirebasePlugin.hasPermission(function(hasPermission){
if(!hasPermission){
    window.FirebasePlugin.grantPermission(function(permissionGranted){
        if(permissionGranted){
            console.log("Permission granted");
        }else{
            console.warn("Permission denied");
        }
    });
}else{
    console.log("Permission already granted");
}

});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM