2016-01-23 81 views
0

建議使用android雲備份來備份GCM ID嗎?我將GCM ID存儲在sharedpreferences中,因此我不必繼續註冊。我應該使用谷歌雲備份GCM註冊ID嗎?

如果我備份這個GCM sharedpref和用戶更改設備,我是否需要將其更新爲新的註冊ID?註冊ID設備是否特定?用戶更換設備並備份時會發生什麼?

我試圖從docs閱讀:

您必須排除任何設備特定標識,或者由服務器發出或產生的設備上。這包括Google雲消息傳遞(GCM)註冊令牌,該令牌在還原到其他設備時可以使您的應用在該設備上無法接收GCM消息。

+0

這是一個設計選擇。您可能希望將其存儲在'SharedPreferences'中,存儲在文件或SQLite數據庫中。這真的取決於應用程序以及您試圖用它來完成什麼。您可能會嘗試查看此堆棧溢出故障單:http://stackoverflow.com/questions/16838654/handling-registration-id-changes-in-google-cloud-messaging-on-android –

回答

0

從文檔,我發現我的答案,這不應該做的原因是,它可以在GCM的應用intialization intrefer,它不會嘗試獲取GCM ID,如果它已經從一個新的設備恢復恢復了舊的註冊ID。

Handle Google Cloud Messaging

對於使用谷歌雲消息傳遞(GCM)推送通知的應用, 備份註冊標記,谷歌雲端通訊 註冊返回可引起通知 爲還原應用程序意外行爲。這是因爲當用戶在 上安裝新設備時,應用程序必須向GCM API查詢新的註冊 令牌。如果舊註冊存在,因爲系統有 支持並恢復它,應用程序不會查找新的令牌。若要 防止出現此問題,請從 排除備份文件集中的註冊令牌。