Use user restriction instead of pin to guard factory reset in Settings.

Bug: 14081992
Change-Id: I60f132312368c5097b46ab97e881eec3700ef586
This commit is contained in:
Julia Reynolds
2014-06-11 12:56:02 -04:00
parent 253b111a3d
commit 2c53933e8d
6 changed files with 68 additions and 42 deletions

View File

@@ -26,6 +26,7 @@ import android.content.Intent;
import android.os.Bundle;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserManager;
import android.preference.CheckBoxPreference;
import android.preference.Preference;
import android.preference.PreferenceScreen;
@@ -43,6 +44,7 @@ public class PrivacySettings extends SettingsPreferenceFragment implements
private static final String BACKUP_DATA = "backup_data";
private static final String AUTO_RESTORE = "auto_restore";
private static final String CONFIGURE_ACCOUNT = "configure_account";
private static final String PERSONAL_DATA_CATEGORY = "personal_data_category";
private IBackupManager mBackupManager;
private CheckBoxPreference mBackup;
private CheckBoxPreference mAutoRestore;
@@ -65,6 +67,11 @@ public class PrivacySettings extends SettingsPreferenceFragment implements
mAutoRestore = (CheckBoxPreference) screen.findPreference(AUTO_RESTORE);
mConfigure = (PreferenceScreen) screen.findPreference(CONFIGURE_ACCOUNT);
if (UserManager.get(getActivity()).hasUserRestriction(
UserManager.DISALLOW_FACTORY_RESET)) {
screen.removePreference(findPreference(PERSONAL_DATA_CATEGORY));
}
// Vendor specific
if (getActivity().getPackageManager().
resolveContentProvider(GSETTINGS_PROVIDER, 0) == null) {