Lưu ý rằng bạn luôn có thể truy xuất mã thông báo bằng:
FirebaseInstanceID.getInstance().getToken();
Điều này sẽ trả về null
nếu mã thông báo chưa được tạo hoặc mã thông báo nếu nó đã được tạo. Trong trường hợp của bạn, rất có thể mã thông báo sẽ được tạo vào thời điểm người dùng đăng nhập. Vì vậy, bạn có thể gửi mã đến máy chủ ứng dụng của mình ngay sau khi người dùng đăng nhập. Nếu nó không khả dụng thì bạn sẽ gửi nó trong lệnh gọi lại onTokenRefresh như Chintan Soni đã đề cập.
Chỉnh sửa
Sử dụng SDK Firebase mới (21.0.0), bạn sẽ nhận được mã thông báo của mình theo cách này:
FirebaseInstallations.getInstance().getToken(false).addOnCompleteListener(new OnCompleteListener<InstallationTokenResult>() {
@Override
public void onComplete(@NonNull Task<InstallationTokenResult> task) {
if(!task.isSuccessful()){
return;
}
// Get new Instance ID token
String token = task.getResult().getToken();
}
});
Tốt hơn bạn nên thêm một người nghe để xử lý phản hồi nhiều hơn.