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

Commit c60caadb authored by Pengquan Meng's avatar Pengquan Meng Committed by android-build-merger
Browse files

Merge "Fixed consistent issue for subId in dataConnection" into qt-dev

am: 3d724b63

Change-Id: I13ecc87ac1fd919507844d0732512aef66622d5e
parents 966fb44b 3d724b63
Loading
Loading
Loading
Loading
+18 −4
Original line number Diff line number Diff line
@@ -47,6 +47,7 @@ import android.telephony.DataFailCause;
import android.telephony.NetworkRegistrationInfo;
import android.telephony.Rlog;
import android.telephony.ServiceState;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.telephony.data.ApnSetting;
import android.telephony.data.DataCallResponse;
@@ -154,6 +155,9 @@ public class DataConnection extends StateMachine {
    // The score we report to connectivity service
    private int mScore;

    // The subscription id associated with this data connection.
    private int mSubId;

    // The data connection controller
    private DcController mDcController;

@@ -182,16 +186,18 @@ public class DataConnection extends StateMachine {
        final int mConnectionGeneration;
        @RequestNetworkType
        final int mRequestType;
        final int mSubId;

        ConnectionParams(ApnContext apnContext, int profileId, int rilRadioTechnology,
                         Message onCompletedMsg, int connectionGeneration,
                         @RequestNetworkType int requestType) {
                         @RequestNetworkType int requestType, int subId) {
            mApnContext = apnContext;
            mProfileId = profileId;
            mRilRat = rilRadioTechnology;
            mOnCompletedMsg = onCompletedMsg;
            mConnectionGeneration = connectionGeneration;
            mRequestType = requestType;
            mSubId = subId;
        }

        @Override
@@ -201,6 +207,7 @@ public class DataConnection extends StateMachine {
                    + " mRat=" + mRilRat
                    + " mOnCompletedMsg=" + msgToString(mOnCompletedMsg)
                    + " mRequestType=" + DcTracker.requestTypeToString(mRequestType)
                    + " mSubId=" + mSubId
                    + "}";
        }
    }
@@ -872,6 +879,7 @@ public class DataConnection extends StateMachine {
        mRestrictedNetworkOverride = false;
        mDcFailCause = DataFailCause.NONE;
        mDisabledApnTypeBitMask = 0;
        mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
    }

    /**
@@ -1253,7 +1261,7 @@ public class DataConnection extends StateMachine {
        result.setLinkUpstreamBandwidthKbps(up);
        result.setLinkDownstreamBandwidthKbps(down);

        result.setNetworkSpecifier(new StringNetworkSpecifier(Integer.toString(mPhone.getSubId())));
        result.setNetworkSpecifier(new StringNetworkSpecifier(Integer.toString(mSubId)));

        result.setCapability(NetworkCapabilities.NET_CAPABILITY_NOT_ROAMING,
                !mPhone.getServiceState().getDataRoaming());
@@ -1723,6 +1731,10 @@ public class DataConnection extends StateMachine {
                        return HANDLED;
                    }

                    if (mSubId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
                        mSubId = cp.mSubId;
                    }

                    transitionTo(mActivatingState);
                    return HANDLED;
                case EVENT_DISCONNECT:
@@ -2412,16 +2424,17 @@ public class DataConnection extends StateMachine {
     * @param connectionGeneration used to track a single connection request so disconnects can get
     *                             ignored if obsolete.
     * @param requestType Data request type
     * @param subId the subscription id associated with this data connection.
     */
    public void bringUp(ApnContext apnContext, int profileId, int rilRadioTechnology,
                        Message onCompletedMsg, int connectionGeneration,
                        @RequestNetworkType int requestType) {
                        @RequestNetworkType int requestType, int subId) {
        if (DBG) {
            log("bringUp: apnContext=" + apnContext + " onCompletedMsg=" + onCompletedMsg);
        }
        sendMessage(DataConnection.EVENT_CONNECT,
                new ConnectionParams(apnContext, profileId, rilRadioTechnology, onCompletedMsg,
                        connectionGeneration, requestType));
                        connectionGeneration, requestType, subId));
    }

    /**
@@ -2769,6 +2782,7 @@ public class DataConnection extends StateMachine {
        pw.println("mDisconnectParams=" + mDisconnectParams);
        pw.println("mDcFailCause=" + mDcFailCause);
        pw.println("mPhone=" + mPhone);
        pw.println("mSubId=" + mSubId);
        pw.println("mLinkProperties=" + mLinkProperties);
        pw.flush();
        pw.println("mDataRegState=" + mDataRegState);
+2 −1
Original line number Diff line number Diff line
@@ -1972,7 +1972,8 @@ public class DcTracker extends Handler {
        Message msg = obtainMessage();
        msg.what = DctConstants.EVENT_DATA_SETUP_COMPLETE;
        msg.obj = new Pair<ApnContext, Integer>(apnContext, generation);
        dataConnection.bringUp(apnContext, profileId, radioTech, msg, generation, requestType);
        dataConnection.bringUp(apnContext, profileId, radioTech, msg, generation, requestType,
                mPhone.getSubId());

        if (DBG) log("setupData: initing!");
        return true;