Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 备份代理服务器导致数据丢失_Java_Android_Backup Agent - Fatal编程技术网

Java 备份代理服务器导致数据丢失

Java 备份代理服务器导致数据丢失,java,android,backup-agent,Java,Android,Backup Agent,我目前已实施BackupAgentHelper来备份SharedReference。然而,偶尔当我发布更新时,我会收到用户的消息,说更新导致他们的SharedReference中的数据被完全擦除。经过调查,唯一可能导致这种情况的是BackupAgentHelper,尽管实现相当标准,所以我不完全确定这是为什么 public class CloudBackup extends BackupAgentHelper { static final String MY_PREFS_BACKUP_KEY

我目前已实施BackupAgentHelper来备份SharedReference。然而,偶尔当我发布更新时,我会收到用户的消息,说更新导致他们的SharedReference中的数据被完全擦除。经过调查,唯一可能导致这种情况的是BackupAgentHelper,尽管实现相当标准,所以我不完全确定这是为什么

public class CloudBackup extends BackupAgentHelper {

 static final String MY_PREFS_BACKUP_KEY = "ACNLPrefs";

 @Override
 public void onCreate() {

     SharedPreferencesBackupHelper helper =
             new SharedPreferencesBackupHelper(this, "ACNLCaught",
                     "ACNLVersion",
                     "ACNLSort");
     addHelper(MY_PREFS_BACKUP_KEY, helper);
 }

}
由于它发生在更新之后(这也不是一个特定的更新,它似乎发生在每次更新之后的极少数用户身上),因此我只能假设它与恢复SharedReference的时间有关。如果一个用户安装了该应用程序,生成了大量数据,然后很快就收到了更新,我想很有可能在BackupAgent有机会进行备份之前下载了更新


任何建议都会非常有用-我不希望任何用户丢失他们的所有数据。

当你的应用程序更新到位时,你不会得到任何恢复活动。在正常使用情况下,您看到恢复的唯一时间是从干净状态安装应用程序时(在该设备上首次安装,或者在用户完全卸载应用程序后,然后重新安装)


一些安卓设备供应商已经改变了SharedReference的处理方式;我想知道受影响的用户是否遇到了一些与此相关的罕见错误。

您能找到解决此问题的方法吗?