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

Commit 59a9884b authored by Wink Saville's avatar Wink Saville Committed by Android (Google) Code Review
Browse files

Merge "Do not change NetworkInfo.DetailedState." into jb-mr2-dev

parents 3a762d8b 67c38219
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -190,6 +190,8 @@ public class MobileDataStateTracker implements NetworkStateTracker {
    private class MobileDataStateReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            // Assume this isn't a provisioning network.
            mNetworkInfo.setIsConnectedToProvisioningNetwork(false);
            if (intent.getAction().equals(TelephonyIntents.
                    ACTION_DATA_CONNECTION_CONNECTED_TO_PROVISIONING_APN)) {
                String apnName = intent.getStringExtra(PhoneConstants.DATA_APN_KEY);
@@ -205,7 +207,11 @@ public class MobileDataStateTracker implements NetworkStateTracker {
                // Make us in the connecting state until we make a new TYPE_MOBILE_PROVISIONING
                mMobileDataState = PhoneConstants.DataState.CONNECTING;
                updateLinkProperitesAndCapatilities(intent);
                setDetailedState(DetailedState.CONNECTED_TO_PROVISIONING_NETWORK, "", apnName);
                mNetworkInfo.setIsConnectedToProvisioningNetwork(true);

                // Change state to SUSPENDED so setDetailedState
                // sends EVENT_STATE_CHANGED to connectivityService
                setDetailedState(DetailedState.SUSPENDED, "", apnName);
            } else if (intent.getAction().equals(TelephonyIntents.
                    ACTION_ANY_DATA_CONNECTION_STATE_CHANGED)) {
                String apnType = intent.getStringExtra(PhoneConstants.DATA_APN_TYPE_KEY);
+26 −9
Original line number Diff line number Diff line
@@ -83,13 +83,7 @@ public class NetworkInfo implements Parcelable {
        /** Link has poor connectivity. */
        VERIFYING_POOR_LINK,
        /** Checking if network is a captive portal */
        CAPTIVE_PORTAL_CHECK,
        /**
         * Network is connected to provisioning network
         * TODO: Probably not needed when we add TYPE_PROVISIONING_NETWORK
         * @hide
         */
        CONNECTED_TO_PROVISIONING_NETWORK
        CAPTIVE_PORTAL_CHECK
    }

    /**
@@ -114,7 +108,6 @@ public class NetworkInfo implements Parcelable {
        stateMap.put(DetailedState.DISCONNECTED, State.DISCONNECTED);
        stateMap.put(DetailedState.FAILED, State.DISCONNECTED);
        stateMap.put(DetailedState.BLOCKED, State.DISCONNECTED);
        stateMap.put(DetailedState.CONNECTED_TO_PROVISIONING_NETWORK, State.CONNECTED);
    }

    private int mNetworkType;
@@ -127,6 +120,8 @@ public class NetworkInfo implements Parcelable {
    private String mExtraInfo;
    private boolean mIsFailover;
    private boolean mIsRoaming;
    private boolean mIsConnectedToProvisioningNetwork;

    /**
     * Indicates whether network connectivity is possible:
     */
@@ -155,6 +150,7 @@ public class NetworkInfo implements Parcelable {
        mState = State.UNKNOWN;
        mIsAvailable = false; // until we're told otherwise, assume unavailable
        mIsRoaming = false;
        mIsConnectedToProvisioningNetwork = false;
    }

    /** {@hide} */
@@ -171,6 +167,7 @@ public class NetworkInfo implements Parcelable {
            mIsFailover = source.mIsFailover;
            mIsRoaming = source.mIsRoaming;
            mIsAvailable = source.mIsAvailable;
            mIsConnectedToProvisioningNetwork = source.mIsConnectedToProvisioningNetwork;
        }
    }

@@ -329,6 +326,22 @@ public class NetworkInfo implements Parcelable {
        }
    }

    /** {@hide} */
    @VisibleForTesting
    public boolean isConnectedToProvisioningNetwork() {
        synchronized (this) {
            return mIsConnectedToProvisioningNetwork;
        }
    }

    /** {@hide} */
    @VisibleForTesting
    public void setIsConnectedToProvisioningNetwork(boolean val) {
        synchronized (this) {
            mIsConnectedToProvisioningNetwork = val;
        }
    }

    /**
     * Reports the current coarse-grained state of the network.
     * @return the coarse-grained state
@@ -412,7 +425,9 @@ public class NetworkInfo implements Parcelable {
            append(", extra: ").append(mExtraInfo == null ? "(none)" : mExtraInfo).
            append(", roaming: ").append(mIsRoaming).
            append(", failover: ").append(mIsFailover).
            append(", isAvailable: ").append(mIsAvailable);
            append(", isAvailable: ").append(mIsAvailable).
            append(", isConnectedToProvisioningNetwork: ").
                    append(mIsConnectedToProvisioningNetwork);
            return builder.toString();
        }
    }
@@ -440,6 +455,7 @@ public class NetworkInfo implements Parcelable {
            dest.writeInt(mIsFailover ? 1 : 0);
            dest.writeInt(mIsAvailable ? 1 : 0);
            dest.writeInt(mIsRoaming ? 1 : 0);
            dest.writeInt(mIsConnectedToProvisioningNetwork ? 1 : 0);
            dest.writeString(mReason);
            dest.writeString(mExtraInfo);
        }
@@ -462,6 +478,7 @@ public class NetworkInfo implements Parcelable {
                netInfo.mIsFailover = in.readInt() != 0;
                netInfo.mIsAvailable = in.readInt() != 0;
                netInfo.mIsRoaming = in.readInt() != 0;
                netInfo.mIsConnectedToProvisioningNetwork = in.readInt() != 0;
                netInfo.mReason = in.readString();
                netInfo.mExtraInfo = in.readString();
                return netInfo;
+7 −8
Original line number Diff line number Diff line
@@ -890,8 +890,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
        // Find the first Provisioning Network
        NetworkInfo provNi = null;
        for (NetworkInfo ni : getAllNetworkInfo()) {
            if (ni.getDetailedState()
                    == NetworkInfo.DetailedState.CONNECTED_TO_PROVISIONING_NETWORK) {
            if (ni.isConnectedToProvisioningNetwork()) {
                provNi = ni;
                break;
            }
@@ -2805,7 +2804,8 @@ public class ConnectivityService extends IConnectivityManager.Stub {
                    NetworkInfo.State state = info.getState();

                    if (VDBG || (state == NetworkInfo.State.CONNECTED) ||
                            (state == NetworkInfo.State.DISCONNECTED)) {
                            (state == NetworkInfo.State.DISCONNECTED) ||
                            (state == NetworkInfo.State.SUSPENDED)) {
                        log("ConnectivityChange for " +
                            info.getTypeName() + ": " +
                            state + "/" + info.getDetailedState());
@@ -2820,7 +2820,8 @@ public class ConnectivityService extends IConnectivityManager.Stub {
                    if (ConnectivityManager.isNetworkTypeMobile(info.getType())
                            && (0 != Settings.Global.getInt(mContext.getContentResolver(),
                                        Settings.Global.DEVICE_PROVISIONED, 0))
                            && (state == NetworkInfo.State.CONNECTED)) {
                            && ((state == NetworkInfo.State.CONNECTED)
                                    || info.isConnectedToProvisioningNetwork())) {
                        checkMobileProvisioning(CheckMp.MAX_TIMEOUT_MS);
                    }

@@ -2833,8 +2834,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
                    } else if (info.getDetailedState() ==
                            DetailedState.CAPTIVE_PORTAL_CHECK) {
                        handleCaptivePortalTrackerCheck(info);
                    } else if (info.getDetailedState() ==
                            DetailedState.CONNECTED_TO_PROVISIONING_NETWORK) {
                    } else if (info.isConnectedToProvisioningNetwork()) {
                        /**
                         * TODO: Create ConnectivityManager.TYPE_MOBILE_PROVISIONING
                         * for now its an in between network, its a network that
@@ -4197,8 +4197,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
        // If provisioning network handle as a special case,
        // otherwise launch browser with the intent directly.
        NetworkInfo ni = getProvisioningNetworkInfo();
        if ((ni != null) && ni.getDetailedState() ==
                    NetworkInfo.DetailedState.CONNECTED_TO_PROVISIONING_NETWORK) {
        if ((ni != null) && ni.isConnectedToProvisioningNetwork()) {
            if (DBG) log("handleMobileProvisioningAction: on provisioning network");
            MobileDataStateTracker mdst = (MobileDataStateTracker)
                    mNetTrackers[ConnectivityManager.TYPE_MOBILE];