错误:
[消息/未注册] 在调用 getToken 之前必须注册远程消息,请参阅 messages().registerDeviceForRemoteMessages()。
我的JS代码:
import messaging from '@react-native-firebase/messaging';
export const requestUserPermission = async () => {
const authStatus = await messaging().requestPermission();
const enabled =
authStatus === messaging.AuthorizationStatus.AUTHORIZED ||
authStatus === messaging.AuthorizationStatus.PROVISIONAL;
if (enabled) {
console.log('Authorization status:', enabled);
getFcmToken()
}
}
export const getFcmToken = async () => {
try {
const token = await messaging().getToken({ senderId: "727807064485" });
console.log(token, ' TOKEN');
} catch (error) {
console.log("FCM error:", error)
}
}
我的 Pod 文件配置根据 Firebase 文档。
Firebase 在 Android 上正常工作,但在 IOS 中,此代码仅适用于请求权限,当我尝试通过添加任何 firsbase.json 文件自动启用设备注册配置的 getToken() 时,会出现错误。
FireBase 软件包版本:
"@react-native-firebase/app": "^16.5.0",
"@react-native-firebase/messaging": "^16.5.0",
尝试:-
添加 firebase.JSON 文件以禁用自动注册并尝试手动注册设备,但它不起作用,
删除构建文件夹,
npm start --重置缓存,
重新安装 Pod,
在 Xcode 中重新打开项目,