Loading telephony/java/android/telephony/CarrierConfigManager.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -8123,6 +8123,13 @@ public class CarrierConfigManager { public static final String KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY = public static final String KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY = "telephony_data_handover_retry_rules_string_array"; "telephony_data_handover_retry_rules_string_array"; /** * Indicates whether delay tearing down IMS data network until voice call ends. * @hide */ public static final String KEY_DELAY_IMS_TEAR_DOWN_UNTIL_CALL_END_BOOL = "delay_ims_tear_down_until_call_end_bool"; /** /** * The patterns of missed incoming call sms. This is the regular expression used for * The patterns of missed incoming call sms. This is the regular expression used for * matching the missed incoming call's date, time, and caller id. The pattern should match * matching the missed incoming call's date, time, and caller id. The pattern should match Loading Loading @@ -8968,6 +8975,7 @@ public class CarrierConfigManager { KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY, new String[] { KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY, new String[] { "retry_interval=1000|2000|4000|8000|16000, maximum_retries=5" "retry_interval=1000|2000|4000|8000|16000, maximum_retries=5" }); }); sDefaults.putBoolean(KEY_DELAY_IMS_TEAR_DOWN_UNTIL_CALL_END_BOOL, false); sDefaults.putStringArray(KEY_MISSED_INCOMING_CALL_SMS_PATTERN_STRING_ARRAY, new String[0]); sDefaults.putStringArray(KEY_MISSED_INCOMING_CALL_SMS_PATTERN_STRING_ARRAY, new String[0]); sDefaults.putBoolean(KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL, false); sDefaults.putBoolean(KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL, false); sDefaults.putString(KEY_DEFAULT_PREFERRED_APN_NAME_STRING, ""); sDefaults.putString(KEY_DEFAULT_PREFERRED_APN_NAME_STRING, ""); Loading telephony/java/android/telephony/DataSpecificRegistrationInfo.java +5 −2 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,8 @@ import android.annotation.SystemApi; import android.os.Parcel; import android.os.Parcel; import android.os.Parcelable; import android.os.Parcelable; import com.android.internal.annotations.VisibleForTesting; import java.util.Objects; import java.util.Objects; Loading Loading @@ -76,7 +78,8 @@ public final class DataSpecificRegistrationInfo implements Parcelable { /** /** * @hide * @hide */ */ DataSpecificRegistrationInfo( @VisibleForTesting public DataSpecificRegistrationInfo( int maxDataCalls, boolean isDcNrRestricted, boolean isNrAvailable, int maxDataCalls, boolean isDcNrRestricted, boolean isNrAvailable, boolean isEnDcAvailable, @Nullable VopsSupportInfo vops) { boolean isEnDcAvailable, @Nullable VopsSupportInfo vops) { this.maxDataCalls = maxDataCalls; this.maxDataCalls = maxDataCalls; Loading Loading @@ -186,7 +189,7 @@ public final class DataSpecificRegistrationInfo implements Parcelable { /** /** * @return The VOPS (Voice over Packet Switched) support information. * @return The VOPS (Voice over Packet Switched) support information. * * * The instance of {@link LTEVopsSupportInfo}, or {@link NrVopsSupportInfo}, * The instance of {@link LteVopsSupportInfo}, or {@link NrVopsSupportInfo}, * null if there is there is no VOPS support information available. * null if there is there is no VOPS support information available. */ */ @Nullable @Nullable Loading telephony/java/android/telephony/NetworkRegistrationInfo.java +50 −15 Original line number Original line Diff line number Diff line Loading @@ -242,13 +242,16 @@ public final class NetworkRegistrationInfo implements Parcelable { * @param cellIdentity The identity representing a unique cell or wifi AP. Set to null if the * @param cellIdentity The identity representing a unique cell or wifi AP. Set to null if the * information is not available. * information is not available. * @param rplmn the registered plmn or the last plmn for attempted registration if reg failed. * @param rplmn the registered plmn or the last plmn for attempted registration if reg failed. * @param voiceSpecificInfo Voice specific registration information. * @param dataSpecificInfo Data specific registration information. */ */ private NetworkRegistrationInfo(@Domain int domain, @TransportType int transportType, private NetworkRegistrationInfo(@Domain int domain, @TransportType int transportType, @RegistrationState int registrationState, @RegistrationState int registrationState, @NetworkType int accessNetworkTechnology, int rejectCause, @NetworkType int accessNetworkTechnology, int rejectCause, boolean emergencyOnly, boolean emergencyOnly, @Nullable @ServiceType List<Integer> availableServices, @Nullable @ServiceType List<Integer> availableServices, @Nullable CellIdentity cellIdentity, @Nullable String rplmn, @Nullable CellIdentity cellIdentity, @Nullable String rplmn) { @Nullable VoiceSpecificRegistrationInfo voiceSpecificInfo, @Nullable DataSpecificRegistrationInfo dataSpecificInfo) { mDomain = domain; mDomain = domain; mTransportType = transportType; mTransportType = transportType; mRegistrationState = registrationState; mRegistrationState = registrationState; Loading @@ -262,6 +265,10 @@ public final class NetworkRegistrationInfo implements Parcelable { mEmergencyOnly = emergencyOnly; mEmergencyOnly = emergencyOnly; mNrState = NR_STATE_NONE; mNrState = NR_STATE_NONE; mRplmn = rplmn; mRplmn = rplmn; mVoiceSpecificInfo = voiceSpecificInfo; mDataSpecificInfo = dataSpecificInfo; updateNrState(); } } /** /** Loading @@ -276,10 +283,9 @@ public final class NetworkRegistrationInfo implements Parcelable { boolean cssSupported, int roamingIndicator, int systemIsInPrl, boolean cssSupported, int roamingIndicator, int systemIsInPrl, int defaultRoamingIndicator) { int defaultRoamingIndicator) { this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, emergencyOnly, availableServices, cellIdentity, rplmn); emergencyOnly, availableServices, cellIdentity, rplmn, new VoiceSpecificRegistrationInfo(cssSupported, roamingIndicator, mVoiceSpecificInfo = new VoiceSpecificRegistrationInfo(cssSupported, roamingIndicator, systemIsInPrl, defaultRoamingIndicator), null); systemIsInPrl, defaultRoamingIndicator); } } /** /** Loading @@ -295,11 +301,9 @@ public final class NetworkRegistrationInfo implements Parcelable { boolean isNrAvailable, boolean isEndcAvailable, boolean isNrAvailable, boolean isEndcAvailable, @Nullable VopsSupportInfo vopsSupportInfo) { @Nullable VopsSupportInfo vopsSupportInfo) { this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, emergencyOnly, availableServices, cellIdentity, rplmn); emergencyOnly, availableServices, cellIdentity, rplmn, null, mDataSpecificInfo = new DataSpecificRegistrationInfo( new DataSpecificRegistrationInfo(maxDataCalls, isDcNrRestricted, isNrAvailable, maxDataCalls, isDcNrRestricted, isNrAvailable, isEndcAvailable, vopsSupportInfo)); isEndcAvailable, vopsSupportInfo); updateNrState(); } } private NetworkRegistrationInfo(Parcel source) { private NetworkRegistrationInfo(Parcel source) { Loading Loading @@ -804,6 +808,12 @@ public final class NetworkRegistrationInfo implements Parcelable { @NonNull @NonNull private String mRplmn = ""; private String mRplmn = ""; @Nullable private DataSpecificRegistrationInfo mDataSpecificRegistrationInfo; @Nullable private VoiceSpecificRegistrationInfo mVoiceSpecificRegistrationInfo; /** /** * Default constructor for Builder. * Default constructor for Builder. */ */ Loading Loading @@ -929,6 +939,30 @@ public final class NetworkRegistrationInfo implements Parcelable { return this; return this; } } /** * Set voice specific registration information. * * @param info The voice specific registration information. * @return The builder. * @hide */ public @NonNull Builder setVoiceSpecificInfo(@NonNull VoiceSpecificRegistrationInfo info) { mVoiceSpecificRegistrationInfo = info; return this; } /** * Set data specific registration information. * * @param info The data specific registration information. * @return The builder. * @hide */ public @NonNull Builder setDataSpecificInfo(@NonNull DataSpecificRegistrationInfo info) { mDataSpecificRegistrationInfo = info; return this; } /** /** * Build the NetworkRegistrationInfo. * Build the NetworkRegistrationInfo. * @return the NetworkRegistrationInfo object. * @return the NetworkRegistrationInfo object. Loading @@ -938,7 +972,8 @@ public final class NetworkRegistrationInfo implements Parcelable { public @NonNull NetworkRegistrationInfo build() { public @NonNull NetworkRegistrationInfo build() { return new NetworkRegistrationInfo(mDomain, mTransportType, mRegistrationState, return new NetworkRegistrationInfo(mDomain, mTransportType, mRegistrationState, mAccessNetworkTechnology, mRejectCause, mEmergencyOnly, mAvailableServices, mAccessNetworkTechnology, mRejectCause, mEmergencyOnly, mAvailableServices, mCellIdentity, mRplmn); mCellIdentity, mRplmn, mVoiceSpecificRegistrationInfo, mDataSpecificRegistrationInfo); } } } } } } Loading
telephony/java/android/telephony/CarrierConfigManager.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -8123,6 +8123,13 @@ public class CarrierConfigManager { public static final String KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY = public static final String KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY = "telephony_data_handover_retry_rules_string_array"; "telephony_data_handover_retry_rules_string_array"; /** * Indicates whether delay tearing down IMS data network until voice call ends. * @hide */ public static final String KEY_DELAY_IMS_TEAR_DOWN_UNTIL_CALL_END_BOOL = "delay_ims_tear_down_until_call_end_bool"; /** /** * The patterns of missed incoming call sms. This is the regular expression used for * The patterns of missed incoming call sms. This is the regular expression used for * matching the missed incoming call's date, time, and caller id. The pattern should match * matching the missed incoming call's date, time, and caller id. The pattern should match Loading Loading @@ -8968,6 +8975,7 @@ public class CarrierConfigManager { KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY, new String[] { KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY, new String[] { "retry_interval=1000|2000|4000|8000|16000, maximum_retries=5" "retry_interval=1000|2000|4000|8000|16000, maximum_retries=5" }); }); sDefaults.putBoolean(KEY_DELAY_IMS_TEAR_DOWN_UNTIL_CALL_END_BOOL, false); sDefaults.putStringArray(KEY_MISSED_INCOMING_CALL_SMS_PATTERN_STRING_ARRAY, new String[0]); sDefaults.putStringArray(KEY_MISSED_INCOMING_CALL_SMS_PATTERN_STRING_ARRAY, new String[0]); sDefaults.putBoolean(KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL, false); sDefaults.putBoolean(KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL, false); sDefaults.putString(KEY_DEFAULT_PREFERRED_APN_NAME_STRING, ""); sDefaults.putString(KEY_DEFAULT_PREFERRED_APN_NAME_STRING, ""); Loading
telephony/java/android/telephony/DataSpecificRegistrationInfo.java +5 −2 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,8 @@ import android.annotation.SystemApi; import android.os.Parcel; import android.os.Parcel; import android.os.Parcelable; import android.os.Parcelable; import com.android.internal.annotations.VisibleForTesting; import java.util.Objects; import java.util.Objects; Loading Loading @@ -76,7 +78,8 @@ public final class DataSpecificRegistrationInfo implements Parcelable { /** /** * @hide * @hide */ */ DataSpecificRegistrationInfo( @VisibleForTesting public DataSpecificRegistrationInfo( int maxDataCalls, boolean isDcNrRestricted, boolean isNrAvailable, int maxDataCalls, boolean isDcNrRestricted, boolean isNrAvailable, boolean isEnDcAvailable, @Nullable VopsSupportInfo vops) { boolean isEnDcAvailable, @Nullable VopsSupportInfo vops) { this.maxDataCalls = maxDataCalls; this.maxDataCalls = maxDataCalls; Loading Loading @@ -186,7 +189,7 @@ public final class DataSpecificRegistrationInfo implements Parcelable { /** /** * @return The VOPS (Voice over Packet Switched) support information. * @return The VOPS (Voice over Packet Switched) support information. * * * The instance of {@link LTEVopsSupportInfo}, or {@link NrVopsSupportInfo}, * The instance of {@link LteVopsSupportInfo}, or {@link NrVopsSupportInfo}, * null if there is there is no VOPS support information available. * null if there is there is no VOPS support information available. */ */ @Nullable @Nullable Loading
telephony/java/android/telephony/NetworkRegistrationInfo.java +50 −15 Original line number Original line Diff line number Diff line Loading @@ -242,13 +242,16 @@ public final class NetworkRegistrationInfo implements Parcelable { * @param cellIdentity The identity representing a unique cell or wifi AP. Set to null if the * @param cellIdentity The identity representing a unique cell or wifi AP. Set to null if the * information is not available. * information is not available. * @param rplmn the registered plmn or the last plmn for attempted registration if reg failed. * @param rplmn the registered plmn or the last plmn for attempted registration if reg failed. * @param voiceSpecificInfo Voice specific registration information. * @param dataSpecificInfo Data specific registration information. */ */ private NetworkRegistrationInfo(@Domain int domain, @TransportType int transportType, private NetworkRegistrationInfo(@Domain int domain, @TransportType int transportType, @RegistrationState int registrationState, @RegistrationState int registrationState, @NetworkType int accessNetworkTechnology, int rejectCause, @NetworkType int accessNetworkTechnology, int rejectCause, boolean emergencyOnly, boolean emergencyOnly, @Nullable @ServiceType List<Integer> availableServices, @Nullable @ServiceType List<Integer> availableServices, @Nullable CellIdentity cellIdentity, @Nullable String rplmn, @Nullable CellIdentity cellIdentity, @Nullable String rplmn) { @Nullable VoiceSpecificRegistrationInfo voiceSpecificInfo, @Nullable DataSpecificRegistrationInfo dataSpecificInfo) { mDomain = domain; mDomain = domain; mTransportType = transportType; mTransportType = transportType; mRegistrationState = registrationState; mRegistrationState = registrationState; Loading @@ -262,6 +265,10 @@ public final class NetworkRegistrationInfo implements Parcelable { mEmergencyOnly = emergencyOnly; mEmergencyOnly = emergencyOnly; mNrState = NR_STATE_NONE; mNrState = NR_STATE_NONE; mRplmn = rplmn; mRplmn = rplmn; mVoiceSpecificInfo = voiceSpecificInfo; mDataSpecificInfo = dataSpecificInfo; updateNrState(); } } /** /** Loading @@ -276,10 +283,9 @@ public final class NetworkRegistrationInfo implements Parcelable { boolean cssSupported, int roamingIndicator, int systemIsInPrl, boolean cssSupported, int roamingIndicator, int systemIsInPrl, int defaultRoamingIndicator) { int defaultRoamingIndicator) { this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, emergencyOnly, availableServices, cellIdentity, rplmn); emergencyOnly, availableServices, cellIdentity, rplmn, new VoiceSpecificRegistrationInfo(cssSupported, roamingIndicator, mVoiceSpecificInfo = new VoiceSpecificRegistrationInfo(cssSupported, roamingIndicator, systemIsInPrl, defaultRoamingIndicator), null); systemIsInPrl, defaultRoamingIndicator); } } /** /** Loading @@ -295,11 +301,9 @@ public final class NetworkRegistrationInfo implements Parcelable { boolean isNrAvailable, boolean isEndcAvailable, boolean isNrAvailable, boolean isEndcAvailable, @Nullable VopsSupportInfo vopsSupportInfo) { @Nullable VopsSupportInfo vopsSupportInfo) { this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause, emergencyOnly, availableServices, cellIdentity, rplmn); emergencyOnly, availableServices, cellIdentity, rplmn, null, mDataSpecificInfo = new DataSpecificRegistrationInfo( new DataSpecificRegistrationInfo(maxDataCalls, isDcNrRestricted, isNrAvailable, maxDataCalls, isDcNrRestricted, isNrAvailable, isEndcAvailable, vopsSupportInfo)); isEndcAvailable, vopsSupportInfo); updateNrState(); } } private NetworkRegistrationInfo(Parcel source) { private NetworkRegistrationInfo(Parcel source) { Loading Loading @@ -804,6 +808,12 @@ public final class NetworkRegistrationInfo implements Parcelable { @NonNull @NonNull private String mRplmn = ""; private String mRplmn = ""; @Nullable private DataSpecificRegistrationInfo mDataSpecificRegistrationInfo; @Nullable private VoiceSpecificRegistrationInfo mVoiceSpecificRegistrationInfo; /** /** * Default constructor for Builder. * Default constructor for Builder. */ */ Loading Loading @@ -929,6 +939,30 @@ public final class NetworkRegistrationInfo implements Parcelable { return this; return this; } } /** * Set voice specific registration information. * * @param info The voice specific registration information. * @return The builder. * @hide */ public @NonNull Builder setVoiceSpecificInfo(@NonNull VoiceSpecificRegistrationInfo info) { mVoiceSpecificRegistrationInfo = info; return this; } /** * Set data specific registration information. * * @param info The data specific registration information. * @return The builder. * @hide */ public @NonNull Builder setDataSpecificInfo(@NonNull DataSpecificRegistrationInfo info) { mDataSpecificRegistrationInfo = info; return this; } /** /** * Build the NetworkRegistrationInfo. * Build the NetworkRegistrationInfo. * @return the NetworkRegistrationInfo object. * @return the NetworkRegistrationInfo object. Loading @@ -938,7 +972,8 @@ public final class NetworkRegistrationInfo implements Parcelable { public @NonNull NetworkRegistrationInfo build() { public @NonNull NetworkRegistrationInfo build() { return new NetworkRegistrationInfo(mDomain, mTransportType, mRegistrationState, return new NetworkRegistrationInfo(mDomain, mTransportType, mRegistrationState, mAccessNetworkTechnology, mRejectCause, mEmergencyOnly, mAvailableServices, mAccessNetworkTechnology, mRejectCause, mEmergencyOnly, mAvailableServices, mCellIdentity, mRplmn); mCellIdentity, mRplmn, mVoiceSpecificRegistrationInfo, mDataSpecificRegistrationInfo); } } } } } }