Firebase消息传递令牌是否在脱机状态下更改



我在我的andrid应用程序中使用了Firebase消息服务,用户可以在中间服务器管理用户令牌的地方相互发送通知。为了使令牌保持最新,我在FirebaseMessagingService中使用以下方法:

@Override
public void onNewToken(String token) {
//Sending username and token to server
// I check if user have active internet connection
if (isOnline()){
sendTokenToServer(token);
}
}

在某些情况下,用户表示发送通知失败,我注意到目标TOKEN不是最新的。我唯一担心的是,当用户离线时,Firebase代币是否会被刷新?还有什么其他原因可能导致此问题?

有些设备无法处理来自服务的API调用,在这种情况下,您可以将令牌发送到服务器,但您的服务器不会

接收令牌https://firebase.google.com/docs/auth/admin/verify-id-tokens

FirebaseUser mUser = FirebaseAuth.getInstance().getCurrentUser();
mUser.getIdToken(true)
.addOnCompleteListener(new OnCompleteListener<GetTokenResult>() {
public void onComplete(@NonNull Task<GetTokenResult> task) {
if (task.isSuccessful()) {
String idToken = task.getResult().getToken();
// Send token to your backend via HTTPS
// ...
} else {
// Handle error -> task.getException();
}
}
});

最新更新