Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bef5f4a6 authored by Michal Karpinski's avatar Michal Karpinski
Browse files

Switch to use RefactoredBackupManagerService

Keeping the legacy BackupManagerService for now, but we'll remove
it in a few weeks if there's no issues noticed.
In case of any problems, this CL can be cleanly reverted as a fallback.

Test: pretty much all we got in store
1) runtest -p com.android.server.backup frameworks-services
2) make gts -j40 && gts-tradefed run gts -m GtsBackupHostTestCases
3) make cts -j40 && cts-tradefed run cts -m CtsBackupTestCases
4) make pts -j40 && pts-tradefed run pts -m PtsBackupHostSideTestCases
5) manual: "adb shell bmgr backupnow --all" and then cloud restore,
   D2D scenarios (both as source and target)
Bug: 65823538
Change-Id: I701764995c4fe2611a4941aecb45315aa457658e
parent de893f3f
Loading
Loading
Loading
Loading
+40 −69
Original line number Diff line number Diff line
@@ -2134,23 +2134,15 @@ HPLcom/android/server/autofill/ui/AutoFillUI$AutoFillUiCallback;->requestHideFil
HPLcom/android/server/autofill/ui/AutoFillUI$AutoFillUiCallback;->requestShowFillUi(Landroid/view/autofill/AutofillId;IILandroid/view/autofill/IAutofillWindowPresenter;)V
HPLcom/android/server/autofill/ui/AutoFillUI$AutoFillUiCallback;->save()V
HPLcom/android/server/autofill/ui/AutoFillUI$AutoFillUiCallback;->startIntentSender(Landroid/content/IntentSender;)V
HPLcom/android/server/backup/BackupManagerService$1;->run()V
HPLcom/android/server/backup/BackupManagerService$3;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V
HPLcom/android/server/backup/BackupManagerService$7;-><init>(Lcom/android/server/backup/BackupManagerService;Ljava/lang/String;Ljava/util/HashSet;)V
HPLcom/android/server/backup/BackupManagerService$7;->run()V
HPLcom/android/server/backup/BackupManagerService$BackupRequest;-><init>(Lcom/android/server/backup/BackupManagerService;Ljava/lang/String;)V
HPLcom/android/server/backup/BackupManagerService;->-wrap18(Lcom/android/server/backup/BackupManagerService;Ljava/lang/String;Ljava/util/HashSet;)V
HPLcom/android/server/backup/BackupManagerService;->addPackageParticipantsLockedInner(Ljava/lang/String;Ljava/util/List;)V
HPLcom/android/server/backup/BackupManagerService;->allAgentPackages()Ljava/util/List;
HPLcom/android/server/backup/BackupManagerService;->appIsDisabled(Landroid/content/pm/ApplicationInfo;Landroid/content/pm/PackageManager;)Z
HPLcom/android/server/backup/BackupManagerService;->appIsEligibleForBackup(Landroid/content/pm/ApplicationInfo;Landroid/content/pm/PackageManager;)Z
HPLcom/android/server/backup/BackupManagerService;->dataChanged(Ljava/lang/String;)V
HPLcom/android/server/backup/BackupManagerService;->dataChangedImpl(Ljava/lang/String;)V
HPLcom/android/server/backup/BackupManagerService;->dataChangedImpl(Ljava/lang/String;Ljava/util/HashSet;)V
HPLcom/android/server/backup/BackupManagerService;->dataChangedTargets(Ljava/lang/String;)Ljava/util/HashSet;
HPLcom/android/server/backup/BackupManagerService;->dequeueFullBackupLocked(Ljava/lang/String;)V
HPLcom/android/server/backup/BackupManagerService;->readFullBackupSchedule()Ljava/util/ArrayList;
HPLcom/android/server/backup/BackupManagerService;->writeToJournalLocked(Ljava/lang/String;)V
HPLcom/android/server/backup/RefactoredBackupManagerService;->addPackageParticipantsLockedInner(Ljava/lang/String;Ljava/util/List;)V
HPLcom/android/server/backup/RefactoredBackupManagerService;->allAgentPackages()Ljava/util/List;
HPLcom/android/server/backup/RefactoredBackupManagerService;->dataChanged(Ljava/lang/String;)V
HPLcom/android/server/backup/RefactoredBackupManagerService;->dataChangedImpl(Ljava/lang/String;)V
HPLcom/android/server/backup/RefactoredBackupManagerService;->dataChangedImpl(Ljava/lang/String;Ljava/util/HashSet;)V
HPLcom/android/server/backup/RefactoredBackupManagerService;->dataChangedTargets(Ljava/lang/String;)Ljava/util/HashSet;
HPLcom/android/server/backup/RefactoredBackupManagerService;->dequeueFullBackupLocked(Ljava/lang/String;)V
HPLcom/android/server/backup/RefactoredBackupManagerService;->readFullBackupSchedule()Ljava/util/ArrayList;
HPLcom/android/server/backup/RefactoredBackupManagerService;->writeToJournalLocked(Ljava/lang/String;)V
HPLcom/android/server/backup/BackupManagerServiceInterface;->acknowledgeAdbBackupOrRestore(IZLjava/lang/String;Ljava/lang/String;Landroid/app/backup/IFullBackupRestoreObserver;)V
HPLcom/android/server/backup/BackupManagerServiceInterface;->adbBackup(Landroid/os/ParcelFileDescriptor;ZZZZZZZZ[Ljava/lang/String;)V
HPLcom/android/server/backup/BackupManagerServiceInterface;->adbRestore(Landroid/os/ParcelFileDescriptor;)V
@@ -2200,6 +2192,8 @@ HPLcom/android/server/backup/PackageManagerBackupAgent;->getStorableApplications
HPLcom/android/server/backup/Trampoline;->dataChanged(Ljava/lang/String;)V
HPLcom/android/server/backup/TransportManager$TransportBoundListener;->onTransportBound(Lcom/android/internal/backup/IBackupTransport;)Z
HPLcom/android/server/backup/TransportManager;->onPackageRemoved(Ljava/lang/String;)V
HPLcom/android/server/backup/utils/AppBackupUtils;->appIsDisabled(Landroid/content/pm/ApplicationInfo;Landroid/content/pm/PackageManager;)Z
HPLcom/android/server/backup/utils/AppBackupUtils;->appIsEligibleForBackup(Landroid/content/pm/ApplicationInfo;Landroid/content/pm/PackageManager;)Z
HPLcom/android/server/clipboard/ClipboardService$ClipboardImpl;->hasPrimaryClip(Ljava/lang/String;)Z
HPLcom/android/server/clipboard/ClipboardService;->clipboardAccessAllowed(ILjava/lang/String;I)Z
HPLcom/android/server/companion/CompanionDeviceManagerService$CompanionDeviceManagerImpl;->checkCallerIsSystemOr(Ljava/lang/String;I)V
@@ -9364,61 +9358,30 @@ PLcom/android/server/autofill/ui/AutoFillUI;->lambda$-com_android_server_autofil
PLcom/android/server/autofill/ui/AutoFillUI;->lambda$-com_android_server_autofill_ui_AutoFillUI_4826(Lcom/android/server/autofill/ui/AutoFillUI$AutoFillUiCallback;Ljava/lang/String;)V
PLcom/android/server/autofill/ui/AutoFillUI;->setCallback(Lcom/android/server/autofill/ui/AutoFillUI$AutoFillUiCallback;)V
PLcom/android/server/autofill/ui/OverlayControl;-><init>(Landroid/content/Context;)V
PLcom/android/server/backup/-$Lambda$UGPbw6RN8_4TeqlxQ94PEo_ieak;->$m$0()V
PLcom/android/server/backup/-$Lambda$UGPbw6RN8_4TeqlxQ94PEo_ieak;-><init>(BLjava/lang/Object;)V
PLcom/android/server/backup/-$Lambda$UGPbw6RN8_4TeqlxQ94PEo_ieak;->run()V
PLcom/android/server/backup/BackupManagerService$1;-><init>(Lcom/android/server/backup/BackupManagerService;)V
PLcom/android/server/backup/BackupManagerService$2;-><init>(Lcom/android/server/backup/BackupManagerService;)V
PLcom/android/server/backup/BackupManagerService$2;->onTransportBound(Lcom/android/internal/backup/IBackupTransport;)Z
PLcom/android/server/backup/BackupManagerService$3;-><init>(Lcom/android/server/backup/BackupManagerService;)V
PLcom/android/server/backup/BackupManagerService$4;-><init>(Lcom/android/server/backup/BackupManagerService;J)V
PLcom/android/server/backup/BackupManagerService$4;->run()V
PLcom/android/server/backup/BackupManagerService$8;-><init>(Lcom/android/server/backup/BackupManagerService;Landroid/content/ComponentName;Landroid/app/backup/ISelectBackupTransportCallback;)V
PLcom/android/server/backup/BackupManagerService$8;->onSuccess(Ljava/lang/String;)V
PLcom/android/server/backup/BackupManagerService$BackupHandler;-><init>(Lcom/android/server/backup/BackupManagerService;Landroid/os/Looper;)V
PLcom/android/server/backup/BackupManagerService$BackupHandler;->handleMessage(Landroid/os/Message;)V
PLcom/android/server/backup/BackupManagerService$FullBackupEntry;-><init>(Lcom/android/server/backup/BackupManagerService;Ljava/lang/String;J)V
PLcom/android/server/backup/BackupManagerService$FullBackupEntry;->compareTo(Lcom/android/server/backup/BackupManagerService$FullBackupEntry;)I
PLcom/android/server/backup/BackupManagerService$FullBackupEntry;->compareTo(Ljava/lang/Object;)I
PLcom/android/server/backup/BackupManagerService$Lifecycle;-><init>(Landroid/content/Context;)V
PLcom/android/server/backup/BackupManagerService$Lifecycle;->onStart()V
PLcom/android/server/backup/BackupManagerService$Lifecycle;->onUnlockUser(I)V
PLcom/android/server/backup/BackupManagerService$ProvisionedObserver;-><init>(Lcom/android/server/backup/BackupManagerService;Landroid/os/Handler;)V
PLcom/android/server/backup/BackupManagerService$RunBackupReceiver;-><init>(Lcom/android/server/backup/BackupManagerService;)V
PLcom/android/server/backup/BackupManagerService$RunBackupReceiver;-><init>(Lcom/android/server/backup/BackupManagerService;Lcom/android/server/backup/BackupManagerService$RunBackupReceiver;)V
PLcom/android/server/backup/BackupManagerService$RunInitializeReceiver;-><init>(Lcom/android/server/backup/BackupManagerService;)V
PLcom/android/server/backup/BackupManagerService$RunInitializeReceiver;-><init>(Lcom/android/server/backup/BackupManagerService;Lcom/android/server/backup/BackupManagerService$RunInitializeReceiver;)V
PLcom/android/server/backup/BackupManagerService;->-get3(Lcom/android/server/backup/BackupManagerService;)Landroid/content/pm/PackageManager;
PLcom/android/server/backup/BackupManagerService;->-get6(Lcom/android/server/backup/BackupManagerService;)Lcom/android/server/backup/TransportManager;
PLcom/android/server/backup/BackupManagerService;->-wrap11(I)Z
PLcom/android/server/backup/BackupManagerService;->-wrap17(Lcom/android/server/backup/BackupManagerService;Ljava/lang/String;)V
PLcom/android/server/backup/BackupManagerService;->-wrap23(Lcom/android/server/backup/BackupManagerService;Ljava/lang/String;)V
PLcom/android/server/backup/BackupManagerService;->-wrap25(Lcom/android/server/backup/BackupManagerService;)V
PLcom/android/server/backup/BackupManagerService;->-wrap5(Landroid/content/pm/PackageInfo;)Z
PLcom/android/server/backup/BackupManagerService;->-wrap9(I)Z
PLcom/android/server/backup/BackupManagerService;-><init>(Landroid/content/Context;Lcom/android/server/backup/Trampoline;)V
PLcom/android/server/backup/BackupManagerService;->addPackageParticipantsLocked([Ljava/lang/String;)V
PLcom/android/server/backup/BackupManagerService;->appGetsFullBackup(Landroid/content/pm/PackageInfo;)Z
PLcom/android/server/backup/BackupManagerService;->backupSettingMigrated(I)Z
PLcom/android/server/backup/BackupManagerService;->enqueueFullBackup(Ljava/lang/String;J)V
PLcom/android/server/backup/BackupManagerService;->getCurrentTransport()Ljava/lang/String;
PLcom/android/server/backup/BackupManagerService;->initPackageTracking()V
PLcom/android/server/backup/BackupManagerService;->isBackupEnabled()Z
PLcom/android/server/backup/BackupManagerService;->lambda$-com_android_server_backup_BackupManagerService_56585()V
PLcom/android/server/backup/BackupManagerService;->parseLeftoverJournals()V
PLcom/android/server/backup/BackupManagerService;->readBackupEnableState(I)Z
PLcom/android/server/backup/BackupManagerService;->removePackageFromSetLocked(Ljava/util/HashSet;Ljava/lang/String;)V
PLcom/android/server/backup/BackupManagerService;->removePackageParticipantsLocked([Ljava/lang/String;I)V
PLcom/android/server/backup/BackupManagerService;->scheduleNextFullBackupJob(J)V
PLcom/android/server/backup/BackupManagerService;->selectBackupTransportAsync(Landroid/content/ComponentName;Landroid/app/backup/ISelectBackupTransportCallback;)V
PLcom/android/server/backup/BackupManagerService;->setBackupEnabled(Z)V
PLcom/android/server/backup/BackupManagerService;->updateStateForTransport(Ljava/lang/String;)V
PLcom/android/server/backup/BackupManagerService;->writeBackupEnableState(ZI)V
PLcom/android/server/backup/BackupManagerService;->writeFullBackupScheduleAsync()V
PLcom/android/server/backup/RefactoredBackupManagerService$Lifecycle;-><init>(Landroid/content/Context;)V
PLcom/android/server/backup/RefactoredBackupManagerService$Lifecycle;->onStart()V
PLcom/android/server/backup/RefactoredBackupManagerService$Lifecycle;->onUnlockUser(I)V
PLcom/android/server/backup/RefactoredBackupManagerService;-><init>(Landroid/content/Context;Lcom/android/server/backup/Trampoline;)V
PLcom/android/server/backup/RefactoredBackupManagerService;->addPackageParticipantsLocked([Ljava/lang/String;)V
PLcom/android/server/backup/RefactoredBackupManagerService;->backupSettingMigrated(I)Z
PLcom/android/server/backup/RefactoredBackupManagerService;->enqueueFullBackup(Ljava/lang/String;J)V
PLcom/android/server/backup/RefactoredBackupManagerService;->getCurrentTransport()Ljava/lang/String;
PLcom/android/server/backup/RefactoredBackupManagerService;->initPackageTracking()V
PLcom/android/server/backup/RefactoredBackupManagerService;->isBackupEnabled()Z
PLcom/android/server/backup/RefactoredBackupManagerService;->parseLeftoverJournals()V
PLcom/android/server/backup/RefactoredBackupManagerService;->readBackupEnableState(I)Z
PLcom/android/server/backup/RefactoredBackupManagerService;->removePackageFromSetLocked(Ljava/util/HashSet;Ljava/lang/String;)V
PLcom/android/server/backup/RefactoredBackupManagerService;->removePackageParticipantsLocked([Ljava/lang/String;I)V
PLcom/android/server/backup/RefactoredBackupManagerService;->scheduleNextFullBackupJob(J)V
PLcom/android/server/backup/RefactoredBackupManagerService;->selectBackupTransportAsync(Landroid/content/ComponentName;Landroid/app/backup/ISelectBackupTransportCallback;)V
PLcom/android/server/backup/RefactoredBackupManagerService;->setBackupEnabled(Z)V
PLcom/android/server/backup/RefactoredBackupManagerService;->updateStateForTransport(Ljava/lang/String;)V
PLcom/android/server/backup/RefactoredBackupManagerService;->writeBackupEnableState(ZI)V
PLcom/android/server/backup/RefactoredBackupManagerService;->writeFullBackupScheduleAsync()V
PLcom/android/server/backup/FullBackupJob;->schedule(Landroid/content/Context;J)V
PLcom/android/server/backup/KeyValueBackupJob;->cancel(Landroid/content/Context;)V
PLcom/android/server/backup/Trampoline;-><init>(Landroid/content/Context;)V
PLcom/android/server/backup/Trampoline;->createBackupManagerService()Lcom/android/server/backup/BackupManagerServiceInterface;
PLcom/android/server/backup/Trampoline;->createRefactoredBackupManagerService()Lcom/android/server/backup/BackupManagerServiceInterface;
PLcom/android/server/backup/Trampoline;->createService()Lcom/android/server/backup/BackupManagerServiceInterface;
PLcom/android/server/backup/Trampoline;->getCurrentTransport()Ljava/lang/String;
PLcom/android/server/backup/Trampoline;->getSuppressFile()Ljava/io/File;
@@ -9459,6 +9422,14 @@ PLcom/android/server/backup/TransportManager;->onPackageChanged(Ljava/lang/Strin
PLcom/android/server/backup/TransportManager;->registerAllTransports()V
PLcom/android/server/backup/TransportManager;->selectTransport(Ljava/lang/String;)Ljava/lang/String;
PLcom/android/server/backup/TransportManager;->tryBindTransport(Landroid/content/ComponentName;)V
PLcom/android/server/backup/internal/BackupHandler;-><init>(Lcom/android/server/backup/RefactoredBackupManagerService;Landroid/os/Looper;)V
PLcom/android/server/backup/fullbackup/FullBackupEntry;->compareTo(Lcom/android/server/backup/fullbackup/FullBackupEntry;)I
PLcom/android/server/backup/fullbackup/FullBackupEntry;->compareTo(Ljava/lang/Object;)I
PLcom/android/server/backup/internal/BackupHandler;->handleMessage(Landroid/os/Message;)V
PLcom/android/server/backup/internal/ProvisionedObserver;-><init>(Lcom/android/server/backup/RefactoredBackupManagerService;Landroid/os/Handler;)V
PLcom/android/server/backup/internal/RunBackupReceiver;-><init>(Lcom/android/server/backup/RefactoredBackupManagerService;)V
PLcom/android/server/backup/internal/RunInitializeReceiver;-><init>(Lcom/android/server/backup/RefactoredBackupManagerService;)V
PLcom/android/server/backup/utils/AppBackupUtils;->appGetsFullBackup(Landroid/content/pm/PackageInfo;)Z
PLcom/android/server/camera/CameraServiceProxy$1;-><init>(Lcom/android/server/camera/CameraServiceProxy;)V
PLcom/android/server/camera/CameraServiceProxy$2;-><init>(Lcom/android/server/camera/CameraServiceProxy;)V
PLcom/android/server/camera/CameraServiceProxy$2;->notifyCameraState(Ljava/lang/String;IILjava/lang/String;)V
+7 −7
Original line number Diff line number Diff line
@@ -123,7 +123,7 @@ class BackupManagerConstants extends ContentObserver {
    // group the calls of these methods in a block syncrhonized on
    // a reference of this object.
    public synchronized long getKeyValueBackupIntervalMilliseconds() {
        if (BackupManagerService.DEBUG_SCHEDULING) {
        if (RefactoredBackupManagerService.DEBUG_SCHEDULING) {
            Slog.v(TAG, "getKeyValueBackupIntervalMilliseconds(...) returns "
                    + mKeyValueBackupIntervalMilliseconds);
        }
@@ -131,7 +131,7 @@ class BackupManagerConstants extends ContentObserver {
    }

    public synchronized long getKeyValueBackupFuzzMilliseconds() {
        if (BackupManagerService.DEBUG_SCHEDULING) {
        if (RefactoredBackupManagerService.DEBUG_SCHEDULING) {
            Slog.v(TAG, "getKeyValueBackupFuzzMilliseconds(...) returns "
                    + mKeyValueBackupFuzzMilliseconds);
        }
@@ -139,7 +139,7 @@ class BackupManagerConstants extends ContentObserver {
    }

    public synchronized boolean getKeyValueBackupRequireCharging() {
        if (BackupManagerService.DEBUG_SCHEDULING) {
        if (RefactoredBackupManagerService.DEBUG_SCHEDULING) {
            Slog.v(TAG, "getKeyValueBackupRequireCharging(...) returns "
                    + mKeyValueBackupRequireCharging);
        }
@@ -147,7 +147,7 @@ class BackupManagerConstants extends ContentObserver {
    }

    public synchronized int getKeyValueBackupRequiredNetworkType() {
        if (BackupManagerService.DEBUG_SCHEDULING) {
        if (RefactoredBackupManagerService.DEBUG_SCHEDULING) {
            Slog.v(TAG, "getKeyValueBackupRequiredNetworkType(...) returns "
                    + mKeyValueBackupRequiredNetworkType);
        }
@@ -155,7 +155,7 @@ class BackupManagerConstants extends ContentObserver {
    }

    public synchronized long getFullBackupIntervalMilliseconds() {
        if (BackupManagerService.DEBUG_SCHEDULING) {
        if (RefactoredBackupManagerService.DEBUG_SCHEDULING) {
            Slog.v(TAG, "getFullBackupIntervalMilliseconds(...) returns "
                    + mFullBackupIntervalMilliseconds);
        }
@@ -163,7 +163,7 @@ class BackupManagerConstants extends ContentObserver {
    }

    public synchronized boolean getFullBackupRequireCharging() {
        if (BackupManagerService.DEBUG_SCHEDULING) {
        if (RefactoredBackupManagerService.DEBUG_SCHEDULING) {
            Slog.v(TAG, "getFullBackupRequireCharging(...) returns " + mFullBackupRequireCharging);
        }
        return mFullBackupRequireCharging;
@@ -171,7 +171,7 @@ class BackupManagerConstants extends ContentObserver {
    }

    public synchronized int getFullBackupRequiredNetworkType() {
        if (BackupManagerService.DEBUG_SCHEDULING) {
        if (RefactoredBackupManagerService.DEBUG_SCHEDULING) {
            Slog.v(TAG, "getFullBackupRequiredNetworkType(...) returns "
                    + mFullBackupRequiredNetworkType);
        }
+4 −0
Original line number Diff line number Diff line
@@ -192,6 +192,10 @@ import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.PBEKeySpec;
import javax.crypto.spec.SecretKeySpec;
/**
 * @Deprecated Use RefactoredBackupManagerService instead. This class is only
 * kept for fallback and archeology reasons and will be removed soon.
 */
public class BackupManagerService implements BackupManagerServiceInterface {
    private static final String TAG = "BackupManagerService";
+2 −2
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ public class FullBackupJob extends JobService {
    @Override
    public boolean onStartJob(JobParameters params) {
        mParams = params;
        Trampoline service = BackupManagerService.getInstance();
        Trampoline service = RefactoredBackupManagerService.getInstance();
        return service.beginFullBackup(this);
    }

@@ -69,7 +69,7 @@ public class FullBackupJob extends JobService {
    public boolean onStopJob(JobParameters params) {
        if (mParams != null) {
            mParams = null;
            Trampoline service = BackupManagerService.getInstance();
            Trampoline service = RefactoredBackupManagerService.getInstance();
            service.endFullBackup();
        }
        return false;
+7 −5
Original line number Diff line number Diff line
@@ -4,8 +4,8 @@ import static android.os.ParcelFileDescriptor.MODE_CREATE;
import static android.os.ParcelFileDescriptor.MODE_READ_ONLY;
import static android.os.ParcelFileDescriptor.MODE_READ_WRITE;
import static android.os.ParcelFileDescriptor.MODE_TRUNCATE;
import static com.android.server.backup.BackupManagerService.OP_TYPE_BACKUP_WAIT;
import static com.android.server.backup.BackupManagerService.TIMEOUT_BACKUP_INTERVAL;
import static com.android.server.backup.RefactoredBackupManagerService.OP_TYPE_BACKUP_WAIT;
import static com.android.server.backup.RefactoredBackupManagerService.TIMEOUT_BACKUP_INTERVAL;

import android.app.ApplicationThreadConstants;
import android.app.IBackupAgent;
@@ -19,6 +19,8 @@ import android.os.RemoteException;
import android.os.SELinux;
import android.util.Slog;

import com.android.server.backup.utils.FullBackupUtils;

import libcore.io.IoUtils;

import java.io.File;
@@ -78,7 +80,7 @@ public class KeyValueAdbBackupEngine {
        mNewStateName = new File(mStateDir,
                pkg + BACKUP_KEY_VALUE_NEW_STATE_FILENAME_SUFFIX);

        mManifestFile = new File(mDataDir, BackupManagerService.BACKUP_MANIFEST_FILENAME);
        mManifestFile = new File(mDataDir, RefactoredBackupManagerService.BACKUP_MANIFEST_FILENAME);
    }

    public void backupOnePackage() throws IOException {
@@ -188,7 +190,7 @@ public class KeyValueAdbBackupEngine {
                if (DEBUG) {
                    Slog.d(TAG, "Writing manifest for " + mPackage.packageName);
                }
                BackupManagerService.writeAppManifest(
                FullBackupUtils.writeAppManifest(
                        mPackage, mPackageManager, mManifestFile, false, false);
                FullBackup.backupToTar(mPackage.packageName, FullBackup.KEY_VALUE_DATA_TOKEN, null,
                        mDataDir.getAbsolutePath(),
@@ -251,7 +253,7 @@ public class KeyValueAdbBackupEngine {
            t.start();

            // Now pull data from the app and stuff it into the output
            BackupManagerService.routeSocketDataToOutput(pipes[0], mOutput);
            FullBackupUtils.routeSocketDataToOutput(pipes[0], mOutput);

            if (!mBackupManagerService.waitUntilOperationComplete(token)) {
                Slog.e(TAG, "Full backup failed on package " + mCurrentPackage.packageName);
Loading