From 6eac929099da157edcf1ac16aafd195f8b54ac57 Mon Sep 17 00:00:00 2001 From: Inseob Kim Date: Fri, 8 Nov 2019 15:11:31 +0900 Subject: [PATCH] SettingsProvider: use sysprop as API for telephony Bug: 117924132 Bug: 141246285 Test: lunch blueline-userdebug; m checkbuild Change-Id: Ib28d5804dcb8480f5a00a869c16a1112fb2c075d Merged-In: Ib28d5804dcb8480f5a00a869c16a1112fb2c075d --- .../providers/settings/DatabaseHelper.java | 30 ++++++++----------- 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java index 6821942111f17..ce48ed6df93b0 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java @@ -41,6 +41,7 @@ import android.os.UserHandle; import android.provider.Settings; import android.provider.Settings.Global; import android.provider.Settings.Secure; +import android.sysprop.TelephonyProperties; import android.telephony.TelephonyManager; import android.text.TextUtils; import android.util.Log; @@ -2496,9 +2497,7 @@ class DatabaseHelper extends SQLiteOpenHelper { // Data roaming default, based on build loadSetting(stmt, Settings.Global.DATA_ROAMING, - "true".equalsIgnoreCase( - SystemProperties.get("ro.com.android.dataroaming", - "false")) ? 1 : 0); + TelephonyProperties.data_roaming().orElse(false) ? 1 : 0); loadBooleanSetting(stmt, Settings.Global.DEVICE_PROVISIONED, R.bool.def_device_provisioned); @@ -2519,9 +2518,7 @@ class DatabaseHelper extends SQLiteOpenHelper { // Mobile Data default, based on build loadSetting(stmt, Settings.Global.MOBILE_DATA, - "true".equalsIgnoreCase( - SystemProperties.get("ro.com.android.mobiledata", - "true")) ? 1 : 0); + TelephonyProperties.mobile_data().orElse(true) ? 1 : 0); loadBooleanSetting(stmt, Settings.Global.NETSTATS_ENABLED, R.bool.def_netstats_enabled); @@ -2575,20 +2572,17 @@ class DatabaseHelper extends SQLiteOpenHelper { // Set the preferred network mode to target desired value or Default // value defined in system property - String val = ""; - String mode; + StringBuilder val = new StringBuilder(); + List defaultNetworks = TelephonyProperties.default_network(); for (int phoneId = 0; - phoneId < getTelephonyManager().getPhoneCount(); phoneId++) { - mode = TelephonyManager.getTelephonyProperty(phoneId, - "ro.telephony.default_network", - Integer.toString(RILConstants.PREFERRED_NETWORK_MODE)); - if (phoneId == 0) { - val = mode; - } else { - val = val + "," + mode; - } + phoneId < TelephonyManager.getDefault().getPhoneCount(); phoneId++) { + int mode = defaultNetworks.size() <= phoneId + || defaultNetworks.get(phoneId) == null + ? RILConstants.PREFERRED_NETWORK_MODE : defaultNetworks.get(phoneId); + if (phoneId > 0) val.append(','); + val.append(mode); } - loadSetting(stmt, Settings.Global.PREFERRED_NETWORK_MODE, val); + loadSetting(stmt, Settings.Global.PREFERRED_NETWORK_MODE, val.toString()); // Set the preferred cdma subscription source to target desired value or default // value defined in Phone