Xamarin android:FirebaseInstanceIdService 已弃用,但 FirebaseMessagingService 中没有 OnNewToken

Lit*_*nny 2 android firebase xamarin firebase-cloud-messaging

我正在使用 Firebase 在 Android 的 Xamarin 表单上推送通知。

我已经安装了 Xamarin.Firebase.Messaging 包,并且知道 FirebaseInstanceIdService 将被弃用。我扩展了 FirebaseMessagingService 并想要覆盖 OnNewToken 函数。

我如何找到要覆盖的 OnNewToken 。

目前我安装的软件包是来自 nuget 的 Xamarin.Firebase.Messaging 60.1142.1。

小智 6

今天,最新版本是121.0.1,如果你可以更新Xamarin.Firebase.Messaging,方法如下所示:

[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)
    {

    }

}
Run Code Online (Sandbox Code Playgroud)

  • 对于Android 12及以上版本,您需要[Service(Exported = true)] (2认同)