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

Commit d32aa193 authored by Chiachang Wang's avatar Chiachang Wang
Browse files

Expose NetworkRegistrationInfo.getNrState() as public API

ConnectivityService is going to become a mainline module which
will not able to access hidden APIs. DataConnectionStat needs
to get the NR 5G state of the mobile data network for checking
if the network type is 5G or not. API in NetworkRegistrationInfo
is suggested to replace the original one in ServiceState. Thus,
expose it as a public API to support it.

Bug: 171183530
Test: make update-api ; m
Test: atest CtsTelephonyTestCases
Change-Id: I965499792286de4f1447559be66ca4be80bd0e6f
parent 806eae49
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -47669,6 +47669,7 @@ package android.telephony {
    method @NonNull public java.util.List<java.lang.Integer> getAvailableServices();
    method @Nullable public android.telephony.CellIdentity getCellIdentity();
    method public int getDomain();
    method public int getNrState();
    method @Nullable public String getRegisteredPlmn();
    method public int getTransportType();
    method public boolean isRegistered();
+1 −0
Original line number Diff line number Diff line
@@ -45837,6 +45837,7 @@ package android.telephony {
    method @NonNull public java.util.List<java.lang.Integer> getAvailableServices();
    method @Nullable public android.telephony.CellIdentity getCellIdentity();
    method public int getDomain();
    method public int getNrState();
    method @Nullable public String getRegisteredPlmn();
    method public int getTransportType();
    method public boolean isRegistered();
+1 −3
Original line number Diff line number Diff line
@@ -49,7 +49,6 @@ public class DataConnectionStats extends BroadcastReceiver {
    private SignalStrength mSignalStrength;
    private ServiceState mServiceState;
    private int mDataState = TelephonyManager.DATA_DISCONNECTED;
    private int mNrState = NetworkRegistrationInfo.NR_STATE_NONE;

    public DataConnectionStats(Context context, Handler listenerHandler) {
        mContext = context;
@@ -96,7 +95,7 @@ public class DataConnectionStats extends BroadcastReceiver {
                : regInfo.getAccessNetworkTechnology();
        // If the device is in NSA NR connection the networkType will report as LTE.
        // For cell dwell rate metrics, this should report NR instead.
        if (mNrState == NetworkRegistrationInfo.NR_STATE_CONNECTED) {
        if (regInfo != null && regInfo.getNrState() == NetworkRegistrationInfo.NR_STATE_CONNECTED) {
            networkType = TelephonyManager.NETWORK_TYPE_NR;
        }
        if (DEBUG) Log.d(TAG, String.format("Noting data connection for network type %s: %svisible",
@@ -153,7 +152,6 @@ public class DataConnectionStats extends BroadcastReceiver {
        @Override
        public void onServiceStateChanged(ServiceState state) {
            mServiceState = state;
            mNrState = state.getNrState();
            notePhoneDataConnectionState();
        }

+0 −1
Original line number Diff line number Diff line
@@ -370,7 +370,6 @@ public final class NetworkRegistrationInfo implements Parcelable {
     * Get the 5G NR connection state.
     *
     * @return the 5G NR connection state.
     * @hide
     */
    public @NRState int getNrState() {
        return mNrState;