Gil*_*oot 3 android firebase firebase-cloud-messaging
我正在使用节点 firebase admin 向 Android 设备发送消息。所有作品。除非我尝试向多个主题发送消息。在下面的示例代码中,我只是订阅了 2 个主题,然后直接向某个条件中的多个主题发送通知。我的手机上没有任何东西。当您只发送到一个主题时,通知成功到达。我不明白为什么它不起作用。Firebase 管理员没有错误响应。只是:“项目/admob-app-id-xxxx/messages/xxxx”
var admin = require("firebase-admin");
var serviceAccount = require("./serviceAccountKey.json");
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "https://admob-app-id-xxxxx.firebaseio.com"
});
var registrationTokens = ["xxxxx"];
var topica = "AAA";
var topicb = "BBB";
var data = {};
var message = {
condition : "'"+topica+"' in topics || '"+topicb+"' in topics",
data: {'message':JSON.stringify(data)},
android: {
ttl: 36000 * 1000,
priority: 'normal',
collapseKey: "test"
}
};
admin.messaging().subscribeToTopic(registrationTokens, topica)
.then(function(response) {
admin.messaging().subscribeToTopic(registrationTokens, topicb)
.then(function(response) {
admin.messaging().send(message, dryRun)
.then((response) => {
console.log('success', response);
}).catch((error) => {
console.log('error', error);
});
})
.catch(function(error) {
console.log('Error subscribing to topic:', error);
});
})
.catch(function(error) {
console.log('Error subscribing to topic:', error);
});
Run Code Online (Sandbox Code Playgroud)
这是 FCM 的一个错误。您可以通过将您的消息帖子分解为多条消息来解决此问题。
而是发送一条消息。
't1' in topics || 't2' in topics || 't3' in topics
Run Code Online (Sandbox Code Playgroud)
发送等效的三个消息。
't1' in topics && !('t2' in topics) && !('t3' in topics)
't2' in topics && !('t3' in topics)
't3' in topics
Run Code Online (Sandbox Code Playgroud)
请注意,5 个主题的限制仍然有效。
| 归档时间: |
|
| 查看次数: |
3137 次 |
| 最近记录: |