亞寵展、全球寵物產業風向標——亞洲寵物展覽會深度解析
939
2022-05-30
在Android上可以很方便地管理數據備份,那些不慎丟失設備的用戶會對該功能感激不盡。備份數據會很安全地存儲在云端,并且只在具有相同谷歌ID設備上恢復數據。
下面是典型的AndroidManifest.xml文件片段:
android:allowBackup="true" android:backupAgent="MyBackupAgent" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme"> android:value="backup-key_string"/> .......
要打開應用程序的備份功能,只需要在android:backupAgent屬性中指定備份代理的類名。該類會處理應用數據的備份與恢復。前例的meta_data屬性指定了在谷歌備份服務中注冊API密匙。具體注冊網址為:https://developer.android.com/google/backup/signup.html。
注冊并獲取API密匙后,把它賦值給android:value屬性,如上面所示。雖然密匙是和應用程序的包名綁定的,不能用于其他應用程序,開發者還是要注意不要在發布的任何代碼中公開分享它。
下面的類是一個簡單的備份代理,用于備份和恢復默認的偏好文件。
注意:從PreferenceManager.getDefaultPreferences()得到的偏好文件名為
public class MyBackupAgent extends BackupAgentHelper{
public static final String PREFS_BACKUP_KEY="prefsBackup";
@Override
public void onCreate(){
super.onCreate();
SharedPreferencesBackupHelper sharedPreferencesBackupHelper=new SharedPreferencesBackupHelper(this,getPackageName()+"_preferences");
addHelper(PREFS_BACKUP_KEY,sharedPreferencesBackupHelper);
}
}
BackupAgentHelper類會自動備份與恢復選擇的偏好文件。也可以使用FileBackupHelper類為其他常規文件添加備份。
谷歌為Android應用提供的備份代理適合少量的數據。雖然備份SQLite數據庫在技術上是可行的,但是最好還是先把數據庫的內容轉成序列化格式,然后壓縮內容,最后備份文件。
Android SDK提供了bmgr命令行工具,它允許對應用程序強制執行備份與恢復。這對開發應用很有用,因為可以用它檢查一切是否正常。
Android 數據庫
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。