You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xamarin.iOS中与Xamarin.Android的FirebaseMessaging.Instance.GetToken等效方法是什么

你要的Xamarin.iOS端等效实现使用Messaging.SharedInstance.TokenAsync这个异步属性即可,它和Android端的FirebaseMessaging.Instance.GetToken()行为一致,本地没有可用Token时会主动发起申请请求,不会直接返回null。

正确实现代码

public async Task<string> GetTokenAsync()
{
    var fcmToken = await Messaging.SharedInstance.TokenAsync;
    return fcmToken.ToString();
}

注意事项

  • 调用该方法前必须先完成Firebase初始化、iOS端推送权限申请,否则可能返回空值或抛出异常
  • 建议将该逻辑放在iOS项目AppDelegate的FinishedLaunching方法中,完成Firebase配置、注册推送权限后再执行
  • 若需要监听Token更新,仍需订阅Messaging.SharedInstance.DidReceiveRegistrationToken事件,实时同步最新Token到你的服务端

你原来用的Messaging.SharedInstance.FcmToken是只读缓存属性,仅读取本地已存在的Token,不会主动触发Token申请流程,所以无缓存时就会返回null。

内容的提问来源于stack exchange,提问作者Hadi Fooladi Talari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 07:27:03