Schematize Telephony System Properties
Properties accessed across partitions are now schematized and will
become APIs to make explicit interfaces among partitions.
Bug: 117924132
Bug: 141246285
Test: lunch blueline-userdebug; m checkbuild
Change-Id: I61f07d29ae871b856ebbcf690238e35f265b56c2
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index b122743..8c60f84 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -52,13 +52,13 @@
import android.os.ServiceManager;
import android.os.ServiceSpecificException;
import android.os.ShellCallback;
-import android.os.SystemProperties;
import android.os.UserHandle;
import android.os.UserManager;
import android.os.WorkSource;
import android.preference.PreferenceManager;
import android.provider.Settings;
import android.provider.Telephony;
+import android.sysprop.TelephonyProperties;
import android.telecom.PhoneAccount;
import android.telecom.PhoneAccountHandle;
import android.telecom.TelecomManager;
@@ -269,10 +269,6 @@
private static final int SELECT_P2 = 0;
private static final int SELECT_P3 = 0x10;
- private static final String DEFAULT_NETWORK_MODE_PROPERTY_NAME = "ro.telephony.default_network";
- private static final String DEFAULT_DATA_ROAMING_PROPERTY_NAME = "ro.com.android.dataroaming";
- private static final String DEFAULT_MOBILE_DATA_PROPERTY_NAME = "ro.com.android.mobiledata";
-
/** The singleton instance. */
private static PhoneInterfaceManager sInstance;
@@ -6930,8 +6926,7 @@
* Returns false if the mobile data is disabled by default, otherwise return true.
*/
private boolean getDefaultDataEnabled() {
- return "true".equalsIgnoreCase(
- SystemProperties.get(DEFAULT_MOBILE_DATA_PROPERTY_NAME, "true"));
+ return TelephonyProperties.mobile_data().orElse(true);
}
/**
@@ -6942,8 +6937,7 @@
private boolean getDefaultDataRoamingEnabled(int subId) {
final CarrierConfigManager configMgr = (CarrierConfigManager)
mApp.getSystemService(Context.CARRIER_CONFIG_SERVICE);
- boolean isDataRoamingEnabled = "true".equalsIgnoreCase(
- SystemProperties.get(DEFAULT_DATA_ROAMING_PROPERTY_NAME, "false"));
+ boolean isDataRoamingEnabled = TelephonyProperties.data_roaming().orElse(true);
isDataRoamingEnabled |= configMgr.getConfigForSubId(subId).getBoolean(
CarrierConfigManager.KEY_CARRIER_DEFAULT_DATA_ROAMING_ENABLED_BOOL);
return isDataRoamingEnabled;
@@ -6954,11 +6948,12 @@
* not set, return {@link Phone#PREFERRED_NT_MODE}.
*/
private int getDefaultNetworkType(int subId) {
- return Integer.parseInt(
- TelephonyManager.getTelephonyProperty(
- mSubscriptionController.getPhoneId(subId),
- DEFAULT_NETWORK_MODE_PROPERTY_NAME,
- String.valueOf(Phone.PREFERRED_NT_MODE)));
+ List<Integer> list = TelephonyProperties.default_network();
+ int phoneId = mSubscriptionController.getPhoneId(subId);
+ if (phoneId >= 0 && phoneId < list.size() && list.get(phoneId) != null) {
+ return list.get(phoneId);
+ }
+ return Phone.PREFERRED_NT_MODE;
}
@Override