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: Ic4f16a4475eb2870dcaeec41b38de90a0f6473bb
This commit is contained in:
Inseob Kim
2018-12-13 16:49:49 +09:00
parent 02bd28edbd
commit 4db955ad57
4 changed files with 12 additions and 13 deletions

View File

@@ -23,12 +23,11 @@ import android.database.ContentObserver;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.os.SystemProperties;
import android.os.UserHandle;
import android.provider.Settings;
import android.sysprop.TelephonyProperties;
import com.android.internal.telephony.PhoneStateIntentReceiver;
import com.android.internal.telephony.TelephonyProperties;
import com.android.settingslib.WirelessUtils;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
@@ -125,8 +124,7 @@ public class AirplaneModeEnabler {
}
public void setAirplaneMode(boolean isAirplaneModeOn) {
if (Boolean.parseBoolean(
SystemProperties.get(TelephonyProperties.PROPERTY_INECM_MODE))) {
if (TelephonyProperties.in_ecm_mode().orElse(false)) {
// In ECM mode, do not update database at this point
} else {
mMetricsFeatureProvider.action(mContext, SettingsEnums.ACTION_AIRPLANE_TOGGLE,

View File

@@ -22,8 +22,8 @@ import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.SystemProperties;
import android.provider.SettingsSlicesContract;
import android.sysprop.TelephonyProperties;
import androidx.fragment.app.Fragment;
import androidx.preference.Preference;
@@ -31,7 +31,6 @@ import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;
import com.android.internal.telephony.TelephonyIntents;
import com.android.internal.telephony.TelephonyProperties;
import com.android.settings.AirplaneModeEnabler;
import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;
@@ -75,8 +74,8 @@ public class AirplaneModePreferenceController extends TogglePreferenceController
@Override
public boolean handlePreferenceTreeClick(Preference preference) {
if (KEY_AIRPLANE_MODE.equals(preference.getKey()) && Boolean.parseBoolean(
SystemProperties.get(TelephonyProperties.PROPERTY_INECM_MODE))) {
if (KEY_AIRPLANE_MODE.equals(preference.getKey())
&& TelephonyProperties.in_ecm_mode().orElse(false)) {
// In ECM mode launch ECM app dialog
if (mFragment != null) {
mFragment.startActivityForResult(

View File

@@ -38,7 +38,7 @@ import android.net.wifi.p2p.WifiP2pManager.DeviceInfoListener;
import android.net.wifi.p2p.WifiP2pManager.PeerListListener;
import android.net.wifi.p2p.WifiP2pManager.PersistentGroupInfoListener;
import android.os.Bundle;
import android.os.SystemProperties;
import android.sysprop.TelephonyProperties;
import android.text.InputFilter;
import android.text.TextUtils;
import android.util.Log;
@@ -429,7 +429,7 @@ public class WifiP2pSettings extends DashboardFragment
WifiP2pConfig config = new WifiP2pConfig();
config.deviceAddress = mSelectedWifiPeer.device.deviceAddress;
int forceWps = SystemProperties.getInt("wifidirect.wps", -1);
int forceWps = TelephonyProperties.wps_info().orElse(-1);
if (forceWps != -1) {
config.wps.setup = forceWps;

View File

@@ -18,7 +18,6 @@ package com.android.settings.deviceinfo.firmwareversion;
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE;
import static com.android.settings.deviceinfo.firmwareversion.BasebandVersionPreferenceController.BASEBAND_PROPERTY;
import static com.google.common.truth.Truth.assertThat;
@@ -26,7 +25,7 @@ import static org.robolectric.shadow.api.Shadow.extract;
import android.content.Context;
import android.net.ConnectivityManager;
import android.os.SystemProperties;
import android.sysprop.TelephonyProperties;
import com.android.settings.testutils.shadow.ShadowConnectivityManager;
@@ -38,6 +37,9 @@ import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import java.util.Arrays;
@RunWith(RobolectricTestRunner.class)
@Config(shadows = ShadowConnectivityManager.class)
public class BasebandVersionPreferenceControllerTest {
@@ -64,7 +66,7 @@ public class BasebandVersionPreferenceControllerTest {
@Test
public void getAvailability_hasMobile_available() {
final String text = "test";
SystemProperties.set(BASEBAND_PROPERTY, text);
TelephonyProperties.baseband_version(Arrays.asList(new String[]{text}));
ShadowConnectivityManager connectivityManager =
extract(mContext.getSystemService(ConnectivityManager.class));
connectivityManager.setNetworkSupported(ConnectivityManager.TYPE_MOBILE, true);