【发布时间】:2018-05-08 16:15:29
【问题描述】:
在我的Android App 中,有多个用户在使用它,他们可能在不同的时间登录。
我正在使用Cloud Functions 向特定的tokens 发送通知,这意味着特定的设备,但我找不到确保notification 将只显示给用户的方法寄去。
假设用户 A 和 B 在同一台设备上登录我的应用程序。收到的通知是发给User A,但当前登录的用户是User B,我不希望User B 看到User A'snotifications。
我曾尝试在我的FirebaseMessagingService 中以这种方式检查:
String receiverEmail= remoteMessage.getData().get("sendTo");
String loggedEmail=firebaseUser.getEmail();
if (loggedEmail!=null){
if (receiverEmail.equals(loggedEmail)){
sendNotification(
context.getString(R.string.your_friend_request_was_accepted),
context.getString(R.string.by)+" "+senderName);
}
}
只有在应用程序运行时才有效。关闭时它不起作用。
我也尝试从Shared Preferences 获取登录用户并检查它,但后来loggedEmail 是null,它根本不起作用。
【问题讨论】:
标签: android firebase firebase-cloud-messaging google-cloud-functions