SettingsProvider: use sysprop as API for telephony

Bug: 117924132
Bug: 141246285
Test: lunch blueline-userdebug; m checkbuild
Change-Id: Ib28d5804dcb8480f5a00a869c16a1112fb2c075d
This commit is contained in:
Inseob Kim
2019-11-08 15:11:31 +09:00
parent a232661f36
commit b45b890a79

View File

@@ -41,6 +41,7 @@ import android.os.UserHandle;
import android.provider.Settings; import android.provider.Settings;
import android.provider.Settings.Global; import android.provider.Settings.Global;
import android.provider.Settings.Secure; import android.provider.Settings.Secure;
import android.sysprop.TelephonyProperties;
import android.telephony.TelephonyManager; import android.telephony.TelephonyManager;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
@@ -2487,9 +2488,7 @@ class DatabaseHelper extends SQLiteOpenHelper {
// Data roaming default, based on build // Data roaming default, based on build
loadSetting(stmt, Settings.Global.DATA_ROAMING, loadSetting(stmt, Settings.Global.DATA_ROAMING,
"true".equalsIgnoreCase( TelephonyProperties.data_roaming().orElse(false) ? 1 : 0);
SystemProperties.get("ro.com.android.dataroaming",
"false")) ? 1 : 0);
loadBooleanSetting(stmt, Settings.Global.DEVICE_PROVISIONED, loadBooleanSetting(stmt, Settings.Global.DEVICE_PROVISIONED,
R.bool.def_device_provisioned); R.bool.def_device_provisioned);
@@ -2510,9 +2509,7 @@ class DatabaseHelper extends SQLiteOpenHelper {
// Mobile Data default, based on build // Mobile Data default, based on build
loadSetting(stmt, Settings.Global.MOBILE_DATA, loadSetting(stmt, Settings.Global.MOBILE_DATA,
"true".equalsIgnoreCase( TelephonyProperties.mobile_data().orElse(true) ? 1 : 0);
SystemProperties.get("ro.com.android.mobiledata",
"true")) ? 1 : 0);
loadBooleanSetting(stmt, Settings.Global.NETSTATS_ENABLED, loadBooleanSetting(stmt, Settings.Global.NETSTATS_ENABLED,
R.bool.def_netstats_enabled); R.bool.def_netstats_enabled);
@@ -2564,20 +2561,17 @@ class DatabaseHelper extends SQLiteOpenHelper {
// Set the preferred network mode to target desired value or Default // Set the preferred network mode to target desired value or Default
// value defined in system property // value defined in system property
String val = ""; StringBuilder val = new StringBuilder();
String mode; List<Integer> defaultNetworks = TelephonyProperties.default_network();
for (int phoneId = 0; for (int phoneId = 0;
phoneId < TelephonyManager.getDefault().getPhoneCount(); phoneId++) { phoneId < TelephonyManager.getDefault().getPhoneCount(); phoneId++) {
mode = TelephonyManager.getTelephonyProperty(phoneId, int mode = defaultNetworks.size() <= phoneId
"ro.telephony.default_network", || defaultNetworks.get(phoneId) == null
Integer.toString(RILConstants.PREFERRED_NETWORK_MODE)); ? RILConstants.PREFERRED_NETWORK_MODE : defaultNetworks.get(phoneId);
if (phoneId == 0) { if (phoneId > 0) val.append(',');
val = mode; val.append(mode);
} else {
val = val + "," + mode;
} }
} loadSetting(stmt, Settings.Global.PREFERRED_NETWORK_MODE, val.toString());
loadSetting(stmt, Settings.Global.PREFERRED_NETWORK_MODE, val);
// Set the preferred cdma subscription source to target desired value or default // Set the preferred cdma subscription source to target desired value or default
// value defined in Phone // value defined in Phone