Merge "Supported network capability MMTEL"
This commit is contained in:
@@ -5640,6 +5640,13 @@ public class CarrierConfigManager {
|
||||
public static final String KEY_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
|
||||
* matching the missed incoming call's date, time, and caller id. The pattern should match
|
||||
@@ -6458,6 +6465,7 @@ public class CarrierConfigManager {
|
||||
KEY_TELEPHONY_DATA_HANDOVER_RETRY_RULES_STRING_ARRAY, new String[] {
|
||||
"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.putBoolean(KEY_DISABLE_DUN_APN_WHILE_ROAMING_WITH_PRESET_APN_BOOL, false);
|
||||
sDefaults.putString(KEY_DEFAULT_PREFERRED_APN_NAME_STRING, "");
|
||||
|
||||
@@ -22,6 +22,8 @@ import android.annotation.SystemApi;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
|
||||
@@ -76,7 +78,8 @@ public final class DataSpecificRegistrationInfo implements Parcelable {
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
DataSpecificRegistrationInfo(
|
||||
@VisibleForTesting
|
||||
public DataSpecificRegistrationInfo(
|
||||
int maxDataCalls, boolean isDcNrRestricted, boolean isNrAvailable,
|
||||
boolean isEnDcAvailable, @Nullable VopsSupportInfo vops) {
|
||||
this.maxDataCalls = maxDataCalls;
|
||||
@@ -186,7 +189,7 @@ public final class DataSpecificRegistrationInfo implements Parcelable {
|
||||
/**
|
||||
* @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.
|
||||
*/
|
||||
@Nullable
|
||||
|
||||
@@ -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
|
||||
* information is not available.
|
||||
* @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,
|
||||
@RegistrationState int registrationState,
|
||||
@NetworkType int accessNetworkTechnology, int rejectCause,
|
||||
boolean emergencyOnly,
|
||||
@Nullable @ServiceType List<Integer> availableServices,
|
||||
@Nullable CellIdentity cellIdentity, @Nullable String rplmn) {
|
||||
@RegistrationState int registrationState,
|
||||
@NetworkType int accessNetworkTechnology, int rejectCause,
|
||||
boolean emergencyOnly, @Nullable @ServiceType List<Integer> availableServices,
|
||||
@Nullable CellIdentity cellIdentity, @Nullable String rplmn,
|
||||
@Nullable VoiceSpecificRegistrationInfo voiceSpecificInfo,
|
||||
@Nullable DataSpecificRegistrationInfo dataSpecificInfo) {
|
||||
mDomain = domain;
|
||||
mTransportType = transportType;
|
||||
mRegistrationState = registrationState;
|
||||
@@ -262,6 +265,10 @@ public final class NetworkRegistrationInfo implements Parcelable {
|
||||
mEmergencyOnly = emergencyOnly;
|
||||
mNrState = NR_STATE_NONE;
|
||||
mRplmn = rplmn;
|
||||
mVoiceSpecificInfo = voiceSpecificInfo;
|
||||
mDataSpecificInfo = dataSpecificInfo;
|
||||
|
||||
updateNrState();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -276,10 +283,9 @@ public final class NetworkRegistrationInfo implements Parcelable {
|
||||
boolean cssSupported, int roamingIndicator, int systemIsInPrl,
|
||||
int defaultRoamingIndicator) {
|
||||
this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause,
|
||||
emergencyOnly, availableServices, cellIdentity, rplmn);
|
||||
|
||||
mVoiceSpecificInfo = new VoiceSpecificRegistrationInfo(cssSupported, roamingIndicator,
|
||||
systemIsInPrl, defaultRoamingIndicator);
|
||||
emergencyOnly, availableServices, cellIdentity, rplmn,
|
||||
new VoiceSpecificRegistrationInfo(cssSupported, roamingIndicator,
|
||||
systemIsInPrl, defaultRoamingIndicator), null);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -295,11 +301,9 @@ public final class NetworkRegistrationInfo implements Parcelable {
|
||||
boolean isNrAvailable, boolean isEndcAvailable,
|
||||
@Nullable VopsSupportInfo vopsSupportInfo) {
|
||||
this(domain, transportType, registrationState, accessNetworkTechnology, rejectCause,
|
||||
emergencyOnly, availableServices, cellIdentity, rplmn);
|
||||
mDataSpecificInfo = new DataSpecificRegistrationInfo(
|
||||
maxDataCalls, isDcNrRestricted, isNrAvailable,
|
||||
isEndcAvailable, vopsSupportInfo);
|
||||
updateNrState();
|
||||
emergencyOnly, availableServices, cellIdentity, rplmn, null,
|
||||
new DataSpecificRegistrationInfo(maxDataCalls, isDcNrRestricted, isNrAvailable,
|
||||
isEndcAvailable, vopsSupportInfo));
|
||||
}
|
||||
|
||||
private NetworkRegistrationInfo(Parcel source) {
|
||||
@@ -804,6 +808,12 @@ public final class NetworkRegistrationInfo implements Parcelable {
|
||||
@NonNull
|
||||
private String mRplmn = "";
|
||||
|
||||
@Nullable
|
||||
private DataSpecificRegistrationInfo mDataSpecificRegistrationInfo;
|
||||
|
||||
@Nullable
|
||||
private VoiceSpecificRegistrationInfo mVoiceSpecificRegistrationInfo;
|
||||
|
||||
/**
|
||||
* Default constructor for Builder.
|
||||
*/
|
||||
@@ -929,6 +939,30 @@ public final class NetworkRegistrationInfo implements Parcelable {
|
||||
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.
|
||||
* @return the NetworkRegistrationInfo object.
|
||||
@@ -938,7 +972,8 @@ public final class NetworkRegistrationInfo implements Parcelable {
|
||||
public @NonNull NetworkRegistrationInfo build() {
|
||||
return new NetworkRegistrationInfo(mDomain, mTransportType, mRegistrationState,
|
||||
mAccessNetworkTechnology, mRejectCause, mEmergencyOnly, mAvailableServices,
|
||||
mCellIdentity, mRplmn);
|
||||
mCellIdentity, mRplmn, mVoiceSpecificRegistrationInfo,
|
||||
mDataSpecificRegistrationInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user