Похоже, что мой onBackup
вызывается, когда я запускаю adb shell bmgr run
, но есть то, что выглядит как PolicyException
. Кто-нибудь знает, что это значит или что вызывает это? Я стучу головой.BackupTransportService вызывает исключение при попытке резервного копирования моих данных
UPDATE: Это происходит, когда я пытаюсь использовать BackupTransportService в качестве транспорта. Использование LocalTransport в порядке. Тем не менее нужна помощь!
Вот код для MyBackupAgent
public class MyBackupAgent extends BackupAgentHelper {
@Override
public void onCreate(){
Log.d("GradeTracker.MyBackupAgent", "onCreate called");
FileBackupHelper myDb = new FileBackupHelper(this, "../databases/" + DBAdapter.DATABASE_NAME);
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="<myKey>" />
</application>
Стек след
11-13 19:53:44.481: D/PerformBackupTask(352): starting agent for backup of BackupRequest{pkg=com.NsouthProductions.gradetrackerpro}
11-13 19:53:44.501: I/BackupManagerService(352): got agent [email protected]
11-13 19:53:44.501: D/PerformBackupTask(352): invokeAgentForBackup on com.NsouthProductions.gradetrackerpro
11-13 19:53:44.511: V/BackupServiceBinder(30648): doBackup() invoked
11-13 19:53:44.511: D/GradeTracker.MyBackupAgent(30648): onBackup called
11-13 19:53:44.511: D/BackupHelperDispatcher(30648): handling existing helper 'GradeTracker.db' [email protected]
11-13 19:53:45.382: E/BackupTransportService(352): com.google.android.backup.BackupRequestGenerator$PolicyException: server error in app com.NsouthProductions.gradetrackerpro: code 7
11-13 19:53:45.382: E/BackupTransportService(352): at com.google.android.backup.BackupRequestGenerator.parseResponse(BackupRequestGenerator.java:360)
11-13 19:53:45.382: E/BackupTransportService(352): at com.google.android.backup.BackupTransportService.sendRequestLocked(BackupTransportService.java:849)
11-13 19:53:45.382: E/BackupTransportService(352): at com.google.android.backup.BackupTransportService.access$600(BackupTransportService.java:78)
11-13 19:53:45.382: E/BackupTransportService(352): at com.google.android.backup.BackupTransportService$1.finishBackup(BackupTransportService.java:444)
11-13 19:53:45.382: E/BackupTransportService(352): at com.android.server.BackupManagerService$PerformBackupTask.operationComplete(BackupManagerService.java:2320)
11-13 19:53:45.382: E/BackupTransportService(352): at com.android.server.BackupManagerService$BackupHandler.handleMessage(BackupManagerService.java:572)
11-13 19:53:45.552: I/PerformBackupTask(352): Backup pass finished.