diff options
author | Christopher Tate <ctate@google.com> | 2011-05-13 15:38:02 -0700 |
---|---|---|
committer | Christopher Tate <ctate@google.com> | 2011-05-13 15:38:02 -0700 |
commit | dc92c82b4180e8067f1acd00a7db7935afce00ff (patch) | |
tree | 4c108ce188aba5c0f2df9c8746fcabe981a47e64 /services/java/com/android/server/BackupManagerService.java | |
parent | 83a7cdc56539d00933c2e25999620cec94c524b6 (diff) | |
download | frameworks_base-dc92c82b4180e8067f1acd00a7db7935afce00ff.zip frameworks_base-dc92c82b4180e8067f1acd00a7db7935afce00ff.tar.gz frameworks_base-dc92c82b4180e8067f1acd00a7db7935afce00ff.tar.bz2 |
Full backup tweaks
* provide placeholder UI showing backup/restore start/stop/timeout
* don't kill the progress UI in mid stream
* tidy up the pax extended header data writing a little
Change-Id: Ife0cb78e3facb541d8327f1d5ca5fe77faa6cbca
Diffstat (limited to 'services/java/com/android/server/BackupManagerService.java')
-rw-r--r-- | services/java/com/android/server/BackupManagerService.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/services/java/com/android/server/BackupManagerService.java b/services/java/com/android/server/BackupManagerService.java index a334dbb..77c2a44 100644 --- a/services/java/com/android/server/BackupManagerService.java +++ b/services/java/com/android/server/BackupManagerService.java @@ -1710,8 +1710,7 @@ class BackupManagerService extends IBackupManager.Stub { IApplicationThread.BACKUP_MODE_FULL); if (agent != null) { try { - ApplicationInfo app = mPackageManager.getApplicationInfo( - pkg.packageName, 0); + ApplicationInfo app = pkg.applicationInfo; boolean sendApk = mIncludeApks && ((app.flags & ApplicationInfo.FLAG_FORWARD_LOCK) == 0) && ((app.flags & ApplicationInfo.FLAG_SYSTEM) == 0 || @@ -1742,9 +1741,6 @@ class BackupManagerService extends IBackupManager.Stub { } else { if (DEBUG) Slog.d(TAG, "Full backup success: " + pkg.packageName); } - } catch (NameNotFoundException e) { - Slog.e(TAG, "Package exists but not app info; skipping: " - + pkg.packageName); } catch (IOException e) { Slog.e(TAG, "Error backing up " + pkg.packageName, e); } @@ -1816,8 +1812,11 @@ class BackupManagerService extends IBackupManager.Stub { // unbind and tidy up even on timeout or failure, just in case mActivityManager.unbindBackupAgent(app); - // The agent was running with a stub Application object, so shut it down - if (app.uid != Process.SYSTEM_UID) { + // The agent was running with a stub Application object, so shut it down. + // !!! We hardcode the confirmation UI's package name here rather than use a + // manifest flag! TODO something less direct. + if (app.uid != Process.SYSTEM_UID + && !pkg.packageName.equals("com.android.backupconfirm")) { if (DEBUG) Slog.d(TAG, "Backup complete, killing host process"); mActivityManager.killApplicationProcess(app.processName, app.uid); } else { |