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

Commit 5e61331d authored by Jeff Sharkey's avatar Jeff Sharkey
Browse files

Move away from deprecated NetworkInfo extra.

Because the NetworkInfo included in CONNECTIVITY_ACTION broadcast
extra does not reflect the state applicable to the calling UID, and
the last sticky broadcast may have stale state, transition to calling
ConnectivityManager.getActiveNetworkInfo() directly.

Change-Id: I86b316fbedd0273585ad5f1248b091bc3a3a5520
parent d53da8ef
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -169,7 +169,9 @@ class Network {
            if (!ConnectivityManager.CONNECTIVITY_ACTION.equals(intent.getAction()))
                return;

            NetworkInfo info = (NetworkInfo)intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
            final ConnectivityManager connManager = (ConnectivityManager) context
                    .getSystemService(Context.CONNECTIVITY_SERVICE);
            final NetworkInfo info = connManager.getActiveNetworkInfo();
            if (info != null)
                mRoaming = info.isRoaming();
        };
+4 −4
Original line number Diff line number Diff line
@@ -146,10 +146,10 @@ public class ConnectionUtil {
                Log.v("ConnectivityReceiver", "onReceive() called with " + intent);
                return;
            }
            if (intent.hasExtra(ConnectivityManager.EXTRA_NETWORK_INFO)) {
                mNetworkInfo = (NetworkInfo)
                        intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
            }

            final ConnectivityManager connManager = (ConnectivityManager) context
                    .getSystemService(Context.CONNECTIVITY_SERVICE);
            mNetworkInfo = connManager.getActiveNetworkInfo();

            if (intent.hasExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO)) {
                mOtherNetworkInfo = (NetworkInfo)
+4 −2
Original line number Diff line number Diff line
@@ -850,8 +850,10 @@ public class NetworkController extends BroadcastReceiver {
            Slog.d(TAG, "updateConnectivity: intent=" + intent);
        }

        NetworkInfo info = (NetworkInfo)(intent.getParcelableExtra(
                ConnectivityManager.EXTRA_NETWORK_INFO));
        final ConnectivityManager connManager = (ConnectivityManager) mContext
                .getSystemService(Context.CONNECTIVITY_SERVICE);
        final NetworkInfo info = connManager.getActiveNetworkInfo();

        int connectionStatus = intent.getIntExtra(ConnectivityManager.EXTRA_INET_CONDITION, 0);

        if (CHATTY) {
+4 −2
Original line number Diff line number Diff line
@@ -1962,8 +1962,10 @@ public class LocationManagerService extends ILocationManager.Stub implements Run
                } else {
                    mNetworkState = LocationProvider.TEMPORARILY_UNAVAILABLE;
                }
                NetworkInfo info =
                    (NetworkInfo)intent.getExtra(ConnectivityManager.EXTRA_NETWORK_INFO);

                final ConnectivityManager connManager = (ConnectivityManager) context
                        .getSystemService(Context.CONNECTIVITY_SERVICE);
                final NetworkInfo info = connManager.getActiveNetworkInfo();

                // Notify location providers of current network state
                synchronized (mLock) {
+3 −2
Original line number Diff line number Diff line
@@ -234,8 +234,9 @@ public class NetworkTimeUpdateService {
            String action = intent.getAction();
            if (ConnectivityManager.CONNECTIVITY_ACTION.equals(action)) {
                // There is connectivity
                NetworkInfo netInfo = (NetworkInfo)intent.getParcelableExtra(
                        ConnectivityManager.EXTRA_NETWORK_INFO);
                final ConnectivityManager connManager = (ConnectivityManager) context
                        .getSystemService(Context.CONNECTIVITY_SERVICE);
                final NetworkInfo netInfo = connManager.getActiveNetworkInfo();
                if (netInfo != null) {
                    // Verify that it's a WIFI connection
                    if (netInfo.getState() == NetworkInfo.State.CONNECTED &&