summaryrefslogtreecommitdiffstats
path: root/core/java/android/backup/IBackupManager.aidl
diff options
context:
space:
mode:
authorChristopher Tate <ctate@google.com>2009-06-02 16:11:00 -0700
committerThe Android Open Source Project <initial-contribution@android.com>2009-06-04 09:57:18 -0700
commitce74edc7eab6b1270577ac7a369243a9cac333e6 (patch)
tree6bd54cd14a4ee948e91c805a37d3ad0fa41a8b9c /core/java/android/backup/IBackupManager.aidl
parent7fb952ac237bbb99d5ccc1455225a7ea07992312 (diff)
downloadframeworks_base-ce74edc7eab6b1270577ac7a369243a9cac333e6.zip
frameworks_base-ce74edc7eab6b1270577ac7a369243a9cac333e6.tar.gz
frameworks_base-ce74edc7eab6b1270577ac7a369243a9cac333e6.tar.bz2
More backup work
* Put in some permission enforcement around agent connection notification and full-backup scheduling. * Full backup now applies to any package, not just backup participants who have declared their own android:backupAgent * The process of running the backup operation on the set of apps who have been queued for it is now done in a separate thread, with a notification mechanism from the main Backup Manager service to pass along new-agent binding knowledge. There's no longer one do-backup message on the primary Handler per target application. * The new backup thread sets up the desired transport now and passes along the newly backed-up data to it for each backup target. Two transports have been defined so far, GoogleTransport and AdbTransport; both are stubs at present. Note that at present the backup data output file seems to be properly created, but after doBackup() is called on the test app's agent it's still zero size.
Diffstat (limited to 'core/java/android/backup/IBackupManager.aidl')
-rw-r--r--core/java/android/backup/IBackupManager.aidl16
1 files changed, 12 insertions, 4 deletions
diff --git a/core/java/android/backup/IBackupManager.aidl b/core/java/android/backup/IBackupManager.aidl
index 3468d70..f5b82fe 100644
--- a/core/java/android/backup/IBackupManager.aidl
+++ b/core/java/android/backup/IBackupManager.aidl
@@ -36,20 +36,28 @@ interface IBackupManager {
/**
* Notifies the Backup Manager Service that an agent has become available. This
* method is only invoked by the Activity Manager.
- * !!! TODO: permission
*/
oneway void agentConnected(String packageName, IBinder agent);
/**
* Notify the Backup Manager Service that an agent has unexpectedly gone away.
* This method is only invoked by the Activity Manager.
- * !!! TODO: permission
*/
oneway void agentDisconnected(String packageName);
/**
- * Schedule a full backup of the given package.
- * !!! TODO: permission
+ * Schedule a full backup of the given package. Callers must hold the
+ * android.permission.BACKUP permission to use this method.
*/
oneway void scheduleFullBackup(String packageName);
+
+ /**
+ * Specify a default backup transport. Callers must hold the
+ * android.permission.BACKUP permission to use this method.
+ *
+ * @param transportID The ID of the transport to select. This should be one
+ * of {@link BackupManager.TRANSPORT_GOOGLE} or {@link BackupManager.TRANSPORT_ADB}.
+ * @return The ID of the previously selected transport.
+ */
+ int selectBackupTransport(int transportID);
}