首页 > 解决方案 > 如何在 Xamarin 中同时使用 Firebase Cloud Messaging 和 Firebase Auth?

问题描述

我正在开发一个 Xamarin Android 本机应用程序,当我尝试同时使用 FCM 和 Firebase-Authentication 时出现问题。

我首先将 FCM 包添加到我的应用程序(最新版本 v71.1740)中,我使用 FirebaseMessagingService 和 google-services.json 并且它运行良好,每次新安装时都会触发 OnNewToken 方法。

然后我添加了 Firebase-Authentication Nuget 包(v71.16),而没有修改我的代码中的任何内容。我卸载了应用程序并重新启动,但我从来没有得到任何推送令牌。

如果我删除 Auth 包,则会触发 OnNewToken 方法。

用这两个模块初始化 Firebase 有什么关系,还是 Xamarin 错误?谢谢

标签: androidfirebasexamarinfirebase-authenticationfirebase-cloud-messaging

解决方案


在我的项目中,我意识到 OnNewToken 断点不会触发,但令牌会正常更新。我知道这一点是因为 LOG 显示给我看。那是我的代码:

namespace MyApp
{
   [Service]
    [IntentFilter(new[] { "com.google.firebase.MESSAGING_EVENT" })]
    public class MyFirebaseMessagingService : FirebaseMessagingService
    {
        const string TAG = "Firebase";

        public override void OnNewToken(string token)
        {
            base.OnNewToken(token);

            Log.Debug(TAG, "Update Token: " + token);

            Preferences.Set("TokenFirebase", token);            
        }

        public override void OnMessageReceived(RemoteMessage message)
        {
            
        }
    }
}

推荐阅读