我将 Firebase 与 Android 应用(身份验证、数据库和通知)结合使用。
我正在尝试从外部服务器(在 nodejs 中)发送通知,以便用户可以向另一个用户发送通知。
因此 android 应用程序会记住一个 UserId 列表(来自 Firebase Auth 的相同 id),然后将此列表发送到 nodejs 服务器。
有了这个列表,服务器联系 url 'https://fcm.googleapis.com/fcm/send ',但是 Firebase 返回了一个 InvalidRegistration,因为我发送的是一个 userId 列表,而不是 Firebase 通知创建的注册 token 列表。
我应该记住这些标记,还是有办法用用户 ID 发送通知?
(当我尝试使用 token 列表时,它当然有效。)
var requestData = {
"registration_ids": userIds, //Problem is here
"data": {
"message": "A message"
}
};
request({
url: "https://fcm.googleapis.com/fcm/send",
method: "POST",
json: true,
headers: {
"Authorization": "key=firebaseKey",
"content-type": "application/json",
},
json: requestData
},
function(err, response, body) {
});
最佳答案
是的,你可以。为此,您必须注册这些用户 ID 而不是设备 ID token 。然后 firebase 识别了您的用户 ID。
@Override
public void onNewToken(@NonNull String token) {
super.onNewToken(token);
Log.d("user_token: ",token);
}
关于android - Firebase 通知和用户 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38029712/