0

我正在將我的Android應用程序從Parse遷移到Firebase。一切都很好地工作,當用戶安裝我的應用程序的第一次,但是,誰使用GCM(解析)從舊版本升級的用戶,我總是得到老GCM令牌格式像Firebase getToken返回舊的GCM格式

String refreshedToken = FirebaseInstanceId.getInstance().getToken(); 
# APA91bG66... 

新安裝總是像

String refreshedToken = FirebaseInstanceId.getInstance().getToken(); 
# c7TUtBlvNqk:APA91bHMDU 

如何強制Firebase返回新格式?

[編輯]正如我之前提到的,我從Parse升級。爲了保持它們都運行良好,在這個版本中,我必須保留GCM(解析)並集成FCM。我仍然使用其他GCM應用程序來初始化Parse Service以進行安裝。所以我認爲我從FCM獲得的令牌屬於其他GCM應用程序。我正在調查它。

+0

@AL。 我知道它,但是當我從頭開始安裝時,我得到了類似於 'fuQpt-ovvdY:APA91bHn _....' 並且我可以完美地發送消息。 但如果我從舊版本升級,我得到了類似 'APA91bG66 .....' ,當我發短信,我得到了錯誤:**「錯誤」:「MismatchSenderId」 ** – anhlt

+1

MismatchSenderId手段您使用的是用於不同項目的標記(除了用於發送通知的標記之外)。如果這是您主要關心的問題,我認爲您的帖子有點不同.. –

+1

正如@AL指出的那樣。客戶端上的Firebase發件人ID不匹配。這意味着您需要您的舊GCM客戶端卸載並安裝新版本。或者,也許你在服務器端使用舊的服務器密鑰。 –

回答

1

我的錯!我必須使用之前使用的同一個Google項目。

請記得將Google API項目導入到Firebase,而不是創建新項目。