获取当前注册令牌
注册令牌是通过方法传递的messaging:didReceiveRegistrationToken:。通常每个应用程序以FCM令牌开始一次调用此方法。调用此方法时,是执行以下操作的理想时间:
如果注册令牌是新的,请将其发送到您的应用程序服务器。将注册令牌订阅到主题。仅对于新订阅或用户重新安装该应用程序的情况,才需要这样做。您可以使用直接检索令牌 。该回调提供了一个 ,其中包含令牌。如果InstanceID检索以任何方式失败,则提供非null错误。
您应该导入FirebaseInstanceID
import FirebaseInstanceID
在您的getTokenMethod
[[FIRInstanceID instanceID] instanceIDWithHandler:^(FIRInstanceIDResult * _Nullable result,NSError * _Nullable error) {if (error != nil) {NSLog(@'Error fetching remote instance ID: %@', error);} else {NSLog(@'Remote instance ID token: %@', result.token);}}];
InstanceID.instanceID().instanceID { (result, error) inif let error = error {print('Error fetching remote instange ID: (error)')} else if let result = result {print('Remote instance ID token: (result.token)') }}解决方法
我正在使用Swift和Firebase。以前,我使用以下方法获取Firebase令牌,然后将其用于存储到数据库中以发送通知。
InstanceID.instanceID().token()
现在,由于我已更新Firebase,因此此方法显示为已弃用。
’token()’ is deprecated: Use instanceIDWithHandler: instead.
我不知道如何使用instanceIDWithHandler我尝试了以下操作,但不知道如何获取令牌。
func instanceID(handler: @escaping InstanceIDResultHandler){ }
请帮忙。先感谢您。