Loading packages/SettingsLib/src/com/android/settingslib/TetherUtil.java +12 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.net.wifi.WifiManager; import android.os.SystemProperties; import android.os.UserHandle; import android.provider.Settings; import android.telephony.CarrierConfigManager; public class TetherUtil { Loading Loading @@ -62,6 +63,13 @@ public class TetherUtil { return wifiManager.getWifiApState() == WifiManager.WIFI_AP_STATE_ENABLED; } private static boolean isEntitlementCheckRequired(Context context) { final CarrierConfigManager configManager = (CarrierConfigManager) context .getSystemService(Context.CARRIER_CONFIG_SERVICE); return configManager.getConfig().getBoolean(CarrierConfigManager .KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL); } public static boolean isProvisioningNeeded(Context context) { // Keep in sync with other usage of config_mobile_hotspot_provision_app. // ConnectivityManager#enforceTetherChangePermission Loading @@ -71,6 +79,10 @@ public class TetherUtil { || provisionApp == null) { return false; } // Check carrier config for entitlement checks if (isEntitlementCheckRequired(context) == false) { return false; } return (provisionApp.length == 2); } Loading telephony/java/android/telephony/CarrierConfigManager.java +10 −0 Original line number Diff line number Diff line Loading @@ -77,6 +77,15 @@ public class CarrierConfigManager { /** Flag indicating if the phone is a world phone */ public static final String KEY_WORLD_PHONE_BOOL = "world_phone_bool"; /** * Flag to require or skip entitlement checks. * If true, entitlement checks will be executed if device has been configured for it, * If false, entitlement checks will be skipped. * @hide */ public static final String KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL = "require_entitlement_checks_bool"; /** * If true, enable vibration (haptic feedback) for key presses in the EmergencyDialer activity. * The pattern is set on a per-platform basis using config_virtualKeyVibePattern. To be Loading Loading @@ -495,6 +504,7 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL, false); sDefaults.putBoolean(KEY_VOICE_PRIVACY_DISABLE_UI_BOOL, false); sDefaults.putBoolean(KEY_WORLD_PHONE_BOOL, false); sDefaults.putBoolean(KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL, true); sDefaults.putInt(KEY_VOLTE_REPLACEMENT_RAT_INT, 0); sDefaults.putString(KEY_DEFAULT_SIM_CALL_MANAGER_STRING, ""); sDefaults.putString(KEY_VVM_DESTINATION_NUMBER_STRING, ""); Loading Loading
packages/SettingsLib/src/com/android/settingslib/TetherUtil.java +12 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.net.wifi.WifiManager; import android.os.SystemProperties; import android.os.UserHandle; import android.provider.Settings; import android.telephony.CarrierConfigManager; public class TetherUtil { Loading Loading @@ -62,6 +63,13 @@ public class TetherUtil { return wifiManager.getWifiApState() == WifiManager.WIFI_AP_STATE_ENABLED; } private static boolean isEntitlementCheckRequired(Context context) { final CarrierConfigManager configManager = (CarrierConfigManager) context .getSystemService(Context.CARRIER_CONFIG_SERVICE); return configManager.getConfig().getBoolean(CarrierConfigManager .KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL); } public static boolean isProvisioningNeeded(Context context) { // Keep in sync with other usage of config_mobile_hotspot_provision_app. // ConnectivityManager#enforceTetherChangePermission Loading @@ -71,6 +79,10 @@ public class TetherUtil { || provisionApp == null) { return false; } // Check carrier config for entitlement checks if (isEntitlementCheckRequired(context) == false) { return false; } return (provisionApp.length == 2); } Loading
telephony/java/android/telephony/CarrierConfigManager.java +10 −0 Original line number Diff line number Diff line Loading @@ -77,6 +77,15 @@ public class CarrierConfigManager { /** Flag indicating if the phone is a world phone */ public static final String KEY_WORLD_PHONE_BOOL = "world_phone_bool"; /** * Flag to require or skip entitlement checks. * If true, entitlement checks will be executed if device has been configured for it, * If false, entitlement checks will be skipped. * @hide */ public static final String KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL = "require_entitlement_checks_bool"; /** * If true, enable vibration (haptic feedback) for key presses in the EmergencyDialer activity. * The pattern is set on a per-platform basis using config_virtualKeyVibePattern. To be Loading Loading @@ -495,6 +504,7 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL, false); sDefaults.putBoolean(KEY_VOICE_PRIVACY_DISABLE_UI_BOOL, false); sDefaults.putBoolean(KEY_WORLD_PHONE_BOOL, false); sDefaults.putBoolean(KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL, true); sDefaults.putInt(KEY_VOLTE_REPLACEMENT_RAT_INT, 0); sDefaults.putString(KEY_DEFAULT_SIM_CALL_MANAGER_STRING, ""); sDefaults.putString(KEY_VVM_DESTINATION_NUMBER_STRING, ""); Loading