ドキュメントやその他の質問を読みましたが、何かが足りないと思います。私の BackupAgentは呼び出されていますが、コマンド ラインから呼び出しても呼び出さonCreate
れません。方程式のどの部分が欠けていますか?onBackup
adb bmgr backup <package>
adb shell bmgr run
MyBackupAgent クラス:
public class MyBackupAgent extends BackupAgentHelper {
public MyBackupAgent() {
Log.d("GradeTracker.MyBackupAgent", "onCreate called");
String str = DBAdapter.DATABASE_NAME;
FileBackupHelper myDb = new FileBackupHelper(this, "../databases/" + str);
addHelper(DBAdapter.DATABASE_NAME , myDb);
}
@Override
public void onBackup(ParcelFileDescriptor oldState, BackupDataOutput data,
ParcelFileDescriptor newState) throws IOException {
Log.d("GradeTracker.MyBackupAgent", "onBackup called");
synchronized (DBAdapter.dbBackupLockObject) {
super.onBackup(oldState, data, newState);
}
}
@Override
public void onRestore(BackupDataInput data, int appVersionCode,
ParcelFileDescriptor newState) throws IOException {
Log.d("GradeTracker.MyBackupAgent", "onRestore called");
synchronized (DBAdapter.dbBackupLockObject) {
super.onRestore(data, appVersionCode, newState);
}
}
}
私のマニフェストで:
<application
android:allowBackup="true"
android:backupAgent="MyBackupAgent"
...
<meta-data android:name="com.google.android.backup.api_key"
android:value="<my_key>" />
数時間前にアプリを Android Backup Services に登録したばかりですが、待つ必要があるとは言われませんでした。私は何が欠けていますか?