我正在使用react-native-firebase和firebase-messaging实现推送通知。
虽然我可以向所有人发送推送通知,但无法将其发送给个人。据我所知,我所需要的只是FCM注册令牌,我可以检索by following the documentation
firebase.messaging().getToken()
.then(fcmToken => {
if (fcmToken) {
console.log("fcm token", fcmToken);
} else {
console.log("fcm token", "null");
}
});
我收到的令牌是合理的令牌,但是当我将其从日志中复制到Firebase控制台中并尝试将其发送到单个设备时,什么也没收到。 (如果我推送到用户细分,则安装了该应用的所有设备都会收到该细分。)
由于我无法为iOS进行测试,因此在iOS上可能也可能不是问题。
在我的build.gradle文件中,包含与Firebase相关的库,如下所示:
compile(project(':react-native-firebase')) {
transitive = false
}
implementation "com.google.android.gms:play-services-base:15.0.1"
implementation "com.google.firebase:firebase-core:16.0.1"
implementation 'com.google.firebase:firebase-auth:16.0.2'
implementation "com.google.firebase:firebase-messaging:17.1.0"
在MainApplication.java文件中,将它们添加到ReactPackages列表中。
new RNGoogleSigninPackage(),
new RNFirebasePackage(),
new RNFirebaseMessagingPackage(),
new RNFirebaseAuthPackage()
我的AndroidManifest没有与Firebase相关的任何更改,因为我发现即使没有推送通知,它们也可以正常工作。 (在尝试实现推送通知时,我注意到除我正在积极研究的电话以外,所有电话都在接收它们-因此我回退了代码。)
编辑:我设法收到一个设备通知。没有任何更改,它突然只工作了一次。现在,它不再起作用了。