使用@react-native-firebase/messaging调用getToken()返回异常对象求助
@react-native-firebase/messaging 11.5.0 getToken() 返回特殊对象的解决办法
你看到的{"_A": null, "_x": 0, "_y": 0, "_z": null}是未解析的Promise内部结构,原因是在Redux Saga中没有正确处理messaging().getToken()的异步操作。
解决步骤:
- 在Saga中必须使用
calleffect来处理异步Promise,示例代码:import { call } from 'redux-saga/effects'; import messaging from '@react-native-firebase/messaging'; function* fetchFCMToken() { try { const fcmToken = yield call(messaging().getToken); // 成功获取后处理token console.log('获取到FCM Token:', fcmToken); } catch (err) { console.error('获取FCM Token失败:', err); } } - 若不使用
call直接调用messaging().getToken(),Saga会直接返回Promise的内部状态对象,而非最终解析后的token值。
额外检查项:
- 确认Firebase已完成初始化配置
- 确认iOS/Android平台的推送权限已正确申请并获取
内容的提问来源于stack exchange,提问作者vikas_g
相关产品推荐
相关产品推荐

