From: Steven Ng Date: Wed, 27 Apr 2016 14:28:40 +0000 (+0100) Subject: Add a Global setting for disabling OEM unlocking setting X-Git-Tag: android-x86-7.1-r1~745^2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=3fe140315dce1d393f8e02597db056eaa779a89e;p=android-x86%2Fpackages-apps-Settings.git Add a Global setting for disabling OEM unlocking setting + Don't enable OEM unlocking setting if the global setting disallows it. Bug: 28163088 Change-Id: Ic306da3fa2cecb90865be055566a7e1603e6b5e2 --- diff --git a/src/com/android/settings/DevelopmentSettings.java b/src/com/android/settings/DevelopmentSettings.java index 1fd8451f55..e28a586f65 100644 --- a/src/com/android/settings/DevelopmentSettings.java +++ b/src/com/android/settings/DevelopmentSettings.java @@ -1014,7 +1014,9 @@ public class DevelopmentSettings extends RestrictedSettingsFragment flashLockState = mOemUnlockManager.getFlashLockState(); } - return flashLockState != PersistentDataBlockManager.FLASH_LOCK_UNLOCKED; + return flashLockState != PersistentDataBlockManager.FLASH_LOCK_UNLOCKED + && Settings.Global.getInt(getActivity().getContentResolver(), + Settings.Global.OEM_UNLOCK_DISALLOWED, 0) == 0; } private void updateOemUnlockOptions() { diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java index 4eaad7d881..90f2726f68 100644 --- a/src/com/android/settings/Utils.java +++ b/src/com/android/settings/Utils.java @@ -759,9 +759,13 @@ public final class Utils extends com.android.settingslib.Utils { * devices allow users to flash other OSes to them. */ static void setOemUnlockEnabled(Context context, boolean enabled) { - PersistentDataBlockManager manager =(PersistentDataBlockManager) - context.getSystemService(Context.PERSISTENT_DATA_BLOCK_SERVICE); - manager.setOemUnlockEnabled(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); + } } /**