我想在SharedPreferences中备份一个值,以便我可以在重新安装后读出这个值.
我的代码不起作用,我不知道错误是什么.
MyBackupAgent
package com.app.appname;
import android.app.backup.BackupAgentHelper;
import android.app.backup.BackupManager;
import android.app.backup.SharedPreferencesBackupHelper;
import android.content.Context;
public class MyBackupAgent extends BackupAgentHelper{
static final String PREFS_DISPLAY = "AppName";
private Context context;
static final String MY_PREFS_BACKUP_KEY = "keyToStore";
public MyBackupAgent(Context context){
this.context = context;
SharedPreferencesBackupHelper helper =
new SharedPreferencesBackupHelper(context, PREFS_DISPLAY);
addHelper(MY_PREFS_BACKUP_KEY, helper);
}
public void storeData(){
BackupManager backupManager = new BackupManager(context);
backupManager.dataChanged();
}
}
我如何存储数据:
...
SharedPreferences settings = getSharedPreferences("AppName", 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("keyToStore", true);
editor.commit();
new MyBackupAgent(this).storeData();
...
我如何收到数据:
...
SharedPreferences settings = getSharedPreferences("AppName", 0);
boolean value = settings.getBoolean("keyToStore", false);
...
我还在Android Manifest中添加了API:
你知道我做错了什么以及它是如何工作的吗?它真的有效吗?
这篇博客探讨了如何在Android中使用SharedPreferencesBackupHelper来实现数据备份和恢复,特别是在应用重新安装后仍能保留数据。作者遇到问题,代码无法在重新安装后读取备份的值。博客内容包括设置BackupAgentHelper,存储和恢复数据的代码示例,以及在AndroidManifest中的配置。然而,备份过程似乎并未按预期工作,作者寻求帮助找出错误并确认备份机制的有效性。
2299

被折叠的 条评论
为什么被折叠?



