Xamarin:FirebaseInstallations 在 AddOnSuccessListener 中提供什么

问题描述 投票:0回答:1

我正在关注这篇文章。检查步骤 12。

  1. 在同一方法中,在调用 Bootstrap.Begin 之后,有条件地在 FirebaseApp 实例上调用 GetInstanceId,将 MainActivity 添加为 IOnSuccessListener。
if (DeviceInstallationService.NotificationsSupported)
{
    FirebaseInstanceId.GetInstance(Firebase.FirebaseApp.Instance)
        .GetInstanceId()
        .AddOnSuccessListener(this);
}

但是

FirebaseInstanceId
已被弃用。相反,我需要编写类似的代码,例如:

if (DeviceInstallationService.NotificationsSupported)
{ 
    FirebaseInstallations.GetInstance(Firebase.FirebaseApp.Instance)
        .GetId()
        .AddOnSuccessListener(???);
}

我应该向

AddOnSuccessListener
提供什么?

xamarin xamarin.forms xamarin.android
1个回答
0
投票

我想通了。 您需要使

MainActivity
实现
IOnSuccessListener
,如下所示:

public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity, IOnSuccessListener

您还需要像这样更新代码:

if (DeviceInstallationService.NotificationsSupported)
{            
    FirebaseInstallations.GetInstance(Firebase.FirebaseApp.Instance)
                     .GetId()
                     .AddOnSuccessListener(this);
}

您需要像这样更新

OnSuccess

public void OnSuccess(Java.Lang.Object result)
{ 
    DeviceInstallationService.Token = result.ToString();
}
© www.soinside.com 2019 - 2024. All rights reserved.