hide launcher restore behind a flag.
enable with 'adb shell settings put secure launcher_restore_enabled 1'
before signing into wiped device
Bug: 12532845
Change-Id: I1471c39dac2e6e1412f7720b1ba8edf46273c593
diff --git a/src/com/android/launcher3/LauncherBackupAgentHelper.java b/src/com/android/launcher3/LauncherBackupAgentHelper.java
index 83e4a60..876cf08 100644
--- a/src/com/android/launcher3/LauncherBackupAgentHelper.java
+++ b/src/com/android/launcher3/LauncherBackupAgentHelper.java
@@ -21,6 +21,7 @@
import android.app.backup.SharedPreferencesBackupHelper;
import android.content.Context;
import android.content.SharedPreferences;
+import android.provider.Settings;
public class LauncherBackupAgentHelper extends BackupAgentHelper {
@@ -28,6 +29,8 @@
private static BackupManager sBackupManager;
+ protected static final String SETTING_RESTORE_ENABLED = "launcher_restore_enabled";
+
/**
* Notify the backup manager that out database is dirty.
*
@@ -54,9 +57,15 @@
@Override
public void onCreate() {
+
+ boolean restoreEnabled = 0 != Settings.Secure.getInt(
+ getContentResolver(), SETTING_RESTORE_ENABLED, 0);
+
addHelper(LauncherBackupHelper.LAUNCHER_PREFS_PREFIX,
- new SharedPreferencesBackupHelper(this,
- LauncherAppState.getSharedPreferencesKey()));
- addHelper(LauncherBackupHelper.LAUNCHER_PREFIX, new LauncherBackupHelper(this));
+ new LauncherPreferencesBackupHelper(this,
+ LauncherAppState.getSharedPreferencesKey(),
+ restoreEnabled));
+ addHelper(LauncherBackupHelper.LAUNCHER_PREFIX,
+ new LauncherBackupHelper(this, restoreEnabled));
}
}