以下是play service backup and restore for MarshMallow
的一些信息正如您所见,现在不需要BackupAgentHelper。开发人员无需备份应用程序,在用户设置中切换以关闭和打开应用程序。现在假设我已经存储在sharedPreference中的GCM注册ID,现在用户切换设备并进行自动备份。旧的GCM ID将包含在还原中,新设备将不会注册GCM,因此不符合远程通知的条件。
所以在我看来,我是否必须写一个备份方案xml文件来排除gcm ID,如果是这样我该怎么做:通过排除xml我的意思是清单的应用程序标签中的这个属性:android:fullBackupContent="@xml/mybackupscheme"
答案 0 :(得分:1)
是的,我们需要排除GCM ID。 Android documentation表示......
对于使用Google云消息传递(GCM)进行推送通知的应用, 备份Google Cloud Messaging的注册令牌 返回的注册可能会导致通知中的意外行为 为恢复的应用程序。这是因为当用户安装您的应用程序时 一个新设备,应用程序必须查询GCM API以进行新注册 令牌。如果旧的注册存在,因为系统有 备份并恢复它,应用程序不寻求新的令牌。至 防止出现此问题,从中排除注册令牌 备份文件集。
有关如何排除的详细信息,请参阅here。