【发布时间】:2019-11-28 13:04:52
【问题描述】:
如果我使用教程中提供的代码,我会收到以下警告:
警告 CS0618:“FirebaseInstanceIdService”已过时:“此类 在这个 android 平台上已经过时了'
警告 CS0672:成员“MyFirebaseIIDService.OnTokenRefresh()”覆盖过时的成员“FirebaseInstanceIdService.OnTokenRefresh()”。将 Obsolete 属性添加到“MyFirebaseIIDService.OnTokenRefresh()”。
警告 CS0618:“FirebaseInstanceId.Token”已过时:“已弃用”
我不知道我是否可以像现在这样使用此代码,或者是否需要更改某些内容才能使代码在当前的 Android 设备上运行。
需要改代码吗?
我的 AndroidManifest.xml 设置:最低 Android 版本 = Android 5.0(API 级别 21),目标 Android 版本 = Android 9.0(API 级别 28)
MyFirebaseIIDService.cs:
using System;
using Android.App;
using Firebase.Iid;
using Android.Util;
namespace Androidproject
{
[Service]
[IntentFilter(new[] { "com.google.firebase.INSTANCE_ID_EVENT" })]
public class MyFirebaseIIDService : FirebaseInstanceIdService
{
const string TAG = "MyFirebaseIIDService";
public override void OnTokenRefresh()
{
var refreshedToken = FirebaseInstanceId.Instance.Token;
Log.Debug(TAG, "Refreshed token: " + refreshedToken);
SendRegistrationToServer(refreshedToken);
}
void SendRegistrationToServer(string token)
{
// Add custom implementation, as needed.
}
}
}
您可以在本教程中找到代码示例:https://docs.microsoft.com/en-us/xamarin/android/data-cloud/google-messaging/remote-notifications-with-fcm?tabs=windows
【问题讨论】:
-
跟随你的链接,在 cmets 你会得到这个:github.com/MicrosoftDocs/xamarin-docs.zh-tw/issues/20。人们说你应该使用
OnNewToken -
如何使用 OnNewToken?我收到此错误消息:错误 CS0115: 'MyFirebaseIIDService.OnNewToken()': 找不到合适的方法来覆盖
标签: c# firebase xamarin.android firebase-cloud-messaging