Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c11ac849 authored by paulhu's avatar paulhu
Browse files

Replace ConnectivityManager hidden symbols on Settings

Connectivity is becoming a mainline module in S, so
ConnectivityManager hidden symbols can not be used for outside
components. Besides, most Tethering relevant methods or variables
on CM are migrated to TetheringManager. So replace all these
methods or variables from ConnectivityManager to TetheringManager
on Settings.

Bug: 180693313
Test: make RunSettingsRoboTests ROBOTEST_FILTER=<Modified Test>
Change-Id: Iba4b121a4ddf3f04252aa0355e0e6494a593682a
Merged-In: Iba4b121a4ddf3f04252aa0355e0e6494a593682a
parent 78b260f5
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -16,8 +16,8 @@

package com.android.settings;

import static android.net.ConnectivityManager.ACTION_TETHER_STATE_CHANGED;
import static android.net.ConnectivityManager.TETHERING_WIFI;
import static android.net.TetheringManager.ACTION_TETHER_STATE_CHANGED;
import static android.net.wifi.WifiManager.WIFI_AP_STATE_CHANGED_ACTION;

import android.app.settings.SettingsEnums;
+16 −17
Original line number Diff line number Diff line
@@ -167,8 +167,8 @@ public class TetherSettings extends RestrictedSettingsFragment
        mEm = (EthernetManager) getSystemService(Context.ETHERNET_SERVICE);
        mTm = (TetheringManager) getSystemService(Context.TETHERING_SERVICE);

        mUsbRegexs = mCm.getTetherableUsbRegexs();
        mBluetoothRegexs = mCm.getTetherableBluetoothRegexs();
        mUsbRegexs = mTm.getTetherableUsbRegexs();
        mBluetoothRegexs = mTm.getTetherableBluetoothRegexs();
        mEthernetRegex = getContext().getResources().getString(
                com.android.internal.R.string.config_ethernet_iface_regex);

@@ -251,14 +251,14 @@ public class TetherSettings extends RestrictedSettingsFragment
        public void onReceive(Context content, Intent intent) {
            String action = intent.getAction();
            // TODO: stop using ACTION_TETHER_STATE_CHANGED and use mTetheringEventCallback instead.
            if (action.equals(ConnectivityManager.ACTION_TETHER_STATE_CHANGED)) {
            if (action.equals(TetheringManager.ACTION_TETHER_STATE_CHANGED)) {
                // TODO - this should understand the interface types
                ArrayList<String> available = intent.getStringArrayListExtra(
                        ConnectivityManager.EXTRA_AVAILABLE_TETHER);
                        TetheringManager.EXTRA_AVAILABLE_TETHER);
                ArrayList<String> active = intent.getStringArrayListExtra(
                        ConnectivityManager.EXTRA_ACTIVE_TETHER);
                        TetheringManager.EXTRA_ACTIVE_TETHER);
                ArrayList<String> errored = intent.getStringArrayListExtra(
                        ConnectivityManager.EXTRA_ERRORED_TETHER);
                        TetheringManager.EXTRA_ERRORED_TETHER);
                updateState(available.toArray(new String[available.size()]),
                        active.toArray(new String[active.size()]),
                        errored.toArray(new String[errored.size()]));
@@ -345,7 +345,7 @@ public class TetherSettings extends RestrictedSettingsFragment
        final Activity activity = getActivity();

        mTetherChangeReceiver = new TetherChangeReceiver();
        IntentFilter filter = new IntentFilter(ConnectivityManager.ACTION_TETHER_STATE_CHANGED);
        IntentFilter filter = new IntentFilter(TetheringManager.ACTION_TETHER_STATE_CHANGED);
        final Intent intent = activity.registerReceiver(mTetherChangeReceiver, filter);

        filter = new IntentFilter();
@@ -367,11 +367,10 @@ public class TetherSettings extends RestrictedSettingsFragment
    }

    private void updateState() {
        final ConnectivityManager cm =
                (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        final String[] available = cm.getTetherableIfaces();
        final String[] tethered = cm.getTetheredIfaces();
        final String[] errored = cm.getTetheringErroredIfaces();
        final TetheringManager tm = getContext().getSystemService(TetheringManager.class);
        final String[] available = tm.getTetherableIfaces();
        final String[] tethered = tm.getTetheredIfaces();
        final String[] errored = tm.getTetheringErroredIfaces();
        updateState(available, tethered, errored);
    }

@@ -391,7 +390,7 @@ public class TetherSettings extends RestrictedSettingsFragment
            for (String regex : mUsbRegexs) {
                if (s.matches(regex)) {
                    if (usbError == ConnectivityManager.TETHER_ERROR_NO_ERROR) {
                        usbError = mCm.getLastTetherError(s);
                        usbError = mTm.getLastTetherError(s);
                    }
                }
            }
@@ -556,8 +555,8 @@ public class TetherSettings extends RestrictedSettingsFragment
                @Override
                public List<String> getNonIndexableKeys(Context context) {
                    final List<String> keys = super.getNonIndexableKeys(context);
                    final ConnectivityManager cm =
                            context.getSystemService(ConnectivityManager.class);
                    final TetheringManager tm =
                            context.getSystemService(TetheringManager.class);

                    if (!TetherUtil.isTetherAvailable(context)) {
                        keys.add(KEY_TETHER_PREFS_SCREEN);
@@ -565,13 +564,13 @@ public class TetherSettings extends RestrictedSettingsFragment
                    }

                    final boolean usbAvailable =
                            cm.getTetherableUsbRegexs().length != 0;
                            tm.getTetherableUsbRegexs().length != 0;
                    if (!usbAvailable || Utils.isMonkeyRunning()) {
                        keys.add(KEY_USB_TETHER_SETTINGS);
                    }

                    final boolean bluetoothAvailable =
                            cm.getTetherableBluetoothRegexs().length != 0;
                            tm.getTetherableBluetoothRegexs().length != 0;
                    if (!bluetoothAvailable) {
                        keys.add(KEY_ENABLE_BLUETOOTH_TETHERING);
                    }
+1 −1
Original line number Diff line number Diff line
@@ -70,7 +70,7 @@ public final class BluetoothTetherPreferenceController extends TetherBasePrefere

    @Override
    public boolean shouldShow() {
        final String[] bluetoothRegexs = mCm.getTetherableBluetoothRegexs();
        final String[] bluetoothRegexs = mTm.getTetherableBluetoothRegexs();
        return bluetoothRegexs != null && bluetoothRegexs.length != 0;
    }

+1 −1
Original line number Diff line number Diff line
@@ -65,7 +65,7 @@ public final class EthernetTetherPreferenceController extends TetherBasePreferen

    @Override
    public boolean shouldEnable() {
        String[] available = mCm.getTetherableIfaces();
        String[] available = mTm.getTetherableIfaces();
        for (String s : available) {
            if (s.matches(mEthernetRegex)) {
                return true;
+3 −3
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@
package com.android.settings.network;

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.TetheringManager;

import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleObserver;
@@ -33,7 +33,7 @@ public abstract class TetherBasePreferenceController extends TogglePreferenceCon
        TetherEnabler.OnTetherStateUpdateListener {

    private static final String TAG = "TetherBasePreferenceController";
    final ConnectivityManager mCm;
    final TetheringManager mTm;
    private final DataSaverBackend mDataSaverBackend;

    private TetherEnabler mTetherEnabler;
@@ -43,7 +43,7 @@ public abstract class TetherBasePreferenceController extends TogglePreferenceCon

    TetherBasePreferenceController(Context context, String preferenceKey) {
        super(context, preferenceKey);
        mCm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        mTm = context.getSystemService(TetheringManager.class);
        mDataSaverBackend = new DataSaverBackend(context);
        mDataSaverEnabled = mDataSaverBackend.isDataSaverEnabled();
    }
Loading