Move developer options related class to development package

Bug: 34203528
Test: none, purely moving classes around
Change-Id: I3cd1d257f948729fda5c04632e7ce9114c40bd0c
This commit is contained in:
Fan Zhang
2017-03-17 16:19:26 -07:00
parent 2907f86971
commit 11d2d68e23
16 changed files with 92 additions and 163 deletions

View File

@@ -60,6 +60,7 @@ import com.android.settings.core.instrumentation.MetricsFeatureProvider;
import com.android.settings.core.instrumentation.SharedPreferencesLogger;
import com.android.settings.dashboard.DashboardFeatureProvider;
import com.android.settings.dashboard.DashboardSummary;
import com.android.settings.development.DevelopmentSettings;
import com.android.settings.enterprise.EnterprisePrivacySettings;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search.DynamicIndexableContentMonitor;

View File

@@ -750,30 +750,6 @@ public final class Utils extends com.android.settingslib.Utils {
|| um.getUserProfiles().contains(otherUser);
}
/**
* Returns whether or not this device is able to be OEM unlocked.
*/
static boolean isOemUnlockEnabled(Context context) {
PersistentDataBlockManager manager =(PersistentDataBlockManager)
context.getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE);
return manager.getOemUnlockEnabled();
}
/**
* Allows enabling or disabling OEM unlock on this device. OEM unlocked
* devices allow users to flash other OSes to them.
*/
static void setOemUnlockEnabled(Context context, boolean enabled) {
try {
PersistentDataBlockManager manager = (PersistentDataBlockManager)
context.getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE);
manager.setOemUnlockEnabled(enabled);
} catch (SecurityException e) {
Log.e(TAG, "Fail to set oem unlock.", e);
}
}
/**
* Return whether or not the user should have a SIM Cards option in Settings.
* TODO: Change back to returning true if count is greater than one after testing.

View File

@@ -22,7 +22,6 @@ import com.android.settings.ChooseLockPassword;
import com.android.settings.ChooseLockPattern;
import com.android.settings.CryptKeeperSettings;
import com.android.settings.DateTimeSettings;
import com.android.settings.DevelopmentSettings;
import com.android.settings.DeviceAdminSettings;
import com.android.settings.DeviceInfoSettings;
import com.android.settings.DisplaySettings;
@@ -65,6 +64,7 @@ import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
import com.android.settings.dashboard.SupportFragment;
import com.android.settings.datausage.DataUsageSummary;
import com.android.settings.deletionhelper.AutomaticStorageManagerSettings;
import com.android.settings.development.DevelopmentSettings;
import com.android.settings.deviceinfo.ImeiInformation;
import com.android.settings.deviceinfo.PrivateVolumeForget;
import com.android.settings.deviceinfo.PrivateVolumeSettings;

View File

@@ -18,7 +18,6 @@ package com.android.settings.dashboard;
import android.util.ArrayMap;
import com.android.settings.DevelopmentSettings;
import com.android.settings.DisplaySettings;
import com.android.settings.SecuritySettings;
import com.android.settings.accounts.AccountDetailDashboardFragment;
@@ -26,6 +25,7 @@ import com.android.settings.accounts.UserAndAccountDashboardFragment;
import com.android.settings.applications.AdvancedAppSettings;
import com.android.settings.applications.AppAndNotificationDashboardFragment;
import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
import com.android.settings.development.DevelopmentSettings;
import com.android.settings.deviceinfo.StorageDashboardFragment;
import com.android.settings.fuelgauge.PowerUsageSummary;
import com.android.settings.language.LanguageAndInputSettings;

View File

@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings;
package com.android.settings.development;
import android.content.Context;
import android.content.res.Resources;
@@ -25,6 +25,8 @@ import android.support.v14.preference.SwitchPreference;
import android.util.AttributeSet;
import android.view.Display;
import com.android.settings.R;
import java.util.ArrayList;
public class ColorModePreference extends SwitchPreference implements DisplayListener {

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.android.settings;
package com.android.settings.development;
import android.Manifest;
import android.app.Activity;
@@ -55,7 +55,6 @@ import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.StrictMode;
import android.os.SystemProperties;
import android.os.UserHandle;
import android.os.UserManager;
import android.os.storage.IStorageManager;
import android.provider.SearchIndexableResource;
@@ -84,11 +83,12 @@ import android.widget.Toast;
import com.android.internal.app.LocalePicker;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.ChooseLockSettingsHelper;
import com.android.settings.R;
import com.android.settings.RestrictedSettingsFragment;
import com.android.settings.SettingsActivity;
import com.android.settings.Utils;
import com.android.settings.dashboard.DashboardFeatureProvider;
import com.android.settings.development.AppPicker;
import com.android.settings.development.BugReportInPowerPreferenceController;
import com.android.settings.development.BugReportPreferenceController;
import com.android.settings.development.TelephonyMonitorPreferenceController;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
@@ -1082,12 +1082,13 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
}
private boolean enableOemUnlockPreference() {
return !isBootloaderUnlocked() && isOemUnlockAllowed();
return !isBootloaderUnlocked() && OemUnlockUtils.isOemUnlockAllowed(mUm);
}
private void updateOemUnlockOptions() {
if (mEnableOemUnlock != null) {
updateSwitchPreference(mEnableOemUnlock, Utils.isOemUnlockEnabled(getActivity()));
updateSwitchPreference(mEnableOemUnlock,
OemUnlockUtils.isOemUnlockEnabled(getActivity()));
updateOemUnlockSettingDescription();
// Showing mEnableOemUnlock preference as device has persistent data block.
mEnableOemUnlock.setDisabledByAdmin(null);
@@ -2297,7 +2298,7 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
@Override
public void onClick(DialogInterface dialog, int which) {
if (which == DialogInterface.BUTTON_POSITIVE) {
Utils.setOemUnlockEnabled(getActivity(), true);
OemUnlockUtils.setOemUnlockEnabled(getActivity(), true);
}
}
};
@@ -2369,7 +2370,7 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
if (mEnableOemUnlock.isChecked()) {
confirmEnableOemUnlock();
} else {
Utils.setOemUnlockEnabled(getActivity(), false);
OemUnlockUtils.setOemUnlockEnabled(getActivity(), false);
}
}
} else {
@@ -2439,7 +2440,7 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
confirmEnableOemUnlock();
}
} else {
Utils.setOemUnlockEnabled(getActivity(), false);
OemUnlockUtils.setOemUnlockEnabled(getActivity(), false);
}
} else if (preference == mMockLocationAppPref) {
Intent intent = new Intent(getActivity(), AppPicker.class);
@@ -2807,7 +2808,7 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
oemUnlockSummary = R.string.oem_unlock_enable_disabled_summary_bootloader_unlocked;
} else if (isSimLockedDevice()) {
oemUnlockSummary = R.string.oem_unlock_enable_disabled_summary_sim_locked_device;
} else if (!isOemUnlockAllowed()) {
} else if (!OemUnlockUtils.isOemUnlockAllowed(mUm)) {
// If the device isn't SIM-locked but OEM unlock is disabled by the system via the
// user restriction, this means either some other carrier restriction is in place or
// the device hasn't been able to confirm which restrictions (SIM-lock or otherwise)
@@ -2842,14 +2843,5 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
return flashLockState == PersistentDataBlockManager.FLASH_LOCK_UNLOCKED;
}
/**
* Returns {@code true} if OEM unlock is disallowed by user restriction
* {@link UserManager#DISALLOW_FACTORY_RESET} or {@link UserManager#DISALLOW_OEM_UNLOCK}.
* Otherwise, returns {@code false}.
*/
private boolean isOemUnlockAllowed() {
UserHandle userHandle = UserHandle.of(UserHandle.myUserId());
return !(mUm.hasBaseUserRestriction(UserManager.DISALLOW_OEM_UNLOCK, userHandle)
|| mUm.hasBaseUserRestriction(UserManager.DISALLOW_FACTORY_RESET, userHandle));
}
}

View File

@@ -0,0 +1,61 @@
/*
* Copyright (C) 2017 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings.development;
import android.content.Context;
import android.os.UserHandle;
import android.os.UserManager;
import android.service.persistentdata.PersistentDataBlockManager;
import android.util.Log;
public class OemUnlockUtils {
private static final String TAG = "OemUnlockUtils";
/**
* Returns whether or not this device is able to be OEM unlocked.
*/
static boolean isOemUnlockEnabled(Context context) {
PersistentDataBlockManager manager = (PersistentDataBlockManager)
context.getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE);
return manager.getOemUnlockEnabled();
}
/**
* Allows enabling or disabling OEM unlock on this device. OEM unlocked
* devices allow users to flash other OSes to them.
*/
static void setOemUnlockEnabled(Context context, boolean enabled) {
try {
PersistentDataBlockManager manager = (PersistentDataBlockManager)
context.getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE);
manager.setOemUnlockEnabled(enabled);
} catch (SecurityException e) {
Log.e(TAG, "Fail to set oem unlock.", e);
}
}
/**
* Returns {@code true} if OEM unlock is disallowed by user restriction
* {@link UserManager#DISALLOW_FACTORY_RESET} or {@link UserManager#DISALLOW_OEM_UNLOCK}.
* Otherwise, returns {@code false}.
*/
static boolean isOemUnlockAllowed(UserManager um) {
final UserHandle userHandle = UserHandle.of(UserHandle.myUserId());
return !(um.hasBaseUserRestriction(UserManager.DISALLOW_OEM_UNLOCK, userHandle)
|| um.hasBaseUserRestriction(UserManager.DISALLOW_FACTORY_RESET, userHandle));
}
}

View File

@@ -31,7 +31,6 @@ import android.widget.Toast;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.ChooseLockSettingsHelper;
import com.android.settings.DevelopmentSettings;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.core.PreferenceController;
@@ -39,6 +38,7 @@ import com.android.settings.core.instrumentation.MetricsFeatureProvider;
import com.android.settings.core.lifecycle.Lifecycle;
import com.android.settings.core.lifecycle.LifecycleObserver;
import com.android.settings.core.lifecycle.events.OnResume;
import com.android.settings.development.DevelopmentSettings;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search2.SearchFeatureProvider;
import com.android.settingslib.RestrictedLockUtils;

View File

@@ -27,7 +27,7 @@ import android.view.View;
import android.view.WindowManagerGlobal;
import com.android.internal.app.LocalePicker;
import com.android.settings.DevelopmentSettings;
import com.android.settings.development.DevelopmentSettings;
public abstract class DevelopmentTiles extends TileService {

View File

@@ -22,7 +22,6 @@ import android.support.annotation.VisibleForTesting;
import android.support.annotation.XmlRes;
import com.android.settings.DateTimeSettings;
import com.android.settings.DevelopmentSettings;
import com.android.settings.DeviceInfoSettings;
import com.android.settings.DisplaySettings;
import com.android.settings.EncryptionAndCredential;
@@ -42,6 +41,7 @@ import com.android.settings.bluetooth.BluetoothSettings;
import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
import com.android.settings.datausage.DataUsageMeteredSettings;
import com.android.settings.datausage.DataUsageSummary;
import com.android.settings.development.DevelopmentSettings;
import com.android.settings.deviceinfo.StorageDashboardFragment;
import com.android.settings.deviceinfo.StorageSettings;
import com.android.settings.display.ScreenZoomSettings;
@@ -165,7 +165,8 @@ public final class SearchIndexableResources {
R.drawable.ic_settings_notifications);
addIndex(SystemDashboardFragment.class, NO_DATA_RES_ID, R.drawable.ic_settings_about);
addIndex(StorageDashboardFragment.class, NO_DATA_RES_ID, R.drawable.ic_settings_storage);
addIndex(ConnectedDeviceDashboardFragment.class, NO_DATA_RES_ID, R.drawable.ic_devices_other);
addIndex(ConnectedDeviceDashboardFragment.class, NO_DATA_RES_ID,
R.drawable.ic_devices_other);
addIndex(EnterprisePrivacySettings.class, NO_DATA_RES_ID, R.drawable.ic_settings_about);
addIndex(PaymentSettings.class, NO_DATA_RES_ID, R.drawable.ic_settings_nfc_payment);
addIndex(