diff --git a/core/java/android/app/backup/BackupManager.java b/core/java/android/app/backup/BackupManager.java index 30f340c50e327..43f69e1c98f78 100644 --- a/core/java/android/app/backup/BackupManager.java +++ b/core/java/android/app/backup/BackupManager.java @@ -253,20 +253,27 @@ public class BackupManager { } /** - * @deprecated Since Android P app can no longer request restoring of its backup. + * @deprecated Applications shouldn't request a restore operation using this method. In Android + * P and later, this method is a no-op. * - * Restore the calling application from backup. The data will be restored from the + *
Restore the calling application from backup. The data will be restored from the * current backup dataset if the application has stored data there, or from * the dataset used during the last full device setup operation if the current * backup dataset has no matching data. If no backup data exists for this application - * in either source, a nonzero value will be returned. + * in either source, a non-zero value is returned. * - *
If this method returns zero (meaning success), the OS will attempt to retrieve - * a backed-up dataset from the remote transport, instantiate the application's - * backup agent, and pass the dataset to the agent's + *
If this method returns zero (meaning success), the OS attempts to retrieve a backed-up + * dataset from the remote transport, instantiate the application's backup agent, and pass the + * dataset to the agent's * {@link android.app.backup.BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore()} * method. * + *
Unlike other restore operations, this method doesn't terminate the
+ * application after the restore. The application continues running to receive the
+ * {@link RestoreObserver} callbacks on the {@code observer} argument. Full backups use an
+ * {@link android.app.Application Application} base class while key-value backups use the
+ * application subclass declared in the AndroidManifest.xml {@code Restore the calling application from backup. The data will be restored from the
* current backup dataset if the application has stored data there, or from
* the dataset used during the last full device setup operation if the current
* backup dataset has no matching data. If no backup data exists for this application
@@ -635,7 +642,7 @@ public class BackupManager {
}
return false;
}
-
+
/**
* Request an immediate backup, providing an observer to which results of the backup operation
* will be published. The Android backup system will decide for each package whether it will