From 500397d3e89daed794611c0c81deda7c21468d4f Mon Sep 17 00:00:00 2001 From: Brad Ebinger Date: Sat, 17 Apr 2021 15:17:14 -0700 Subject: [PATCH] Add the REGISTRATION_TECH_NR Tech type Adds the new NR registration technology for devices that support IMS over NR so that the APIs can report this technology. Bug: 179724463 Test: atest CtsTelephonyTestCases Merged-In: I4b0f9882dcf36e2ff7151778cbadb8e83513df5a Change-Id: I4b0f9882dcf36e2ff7151778cbadb8e83513df5a --- core/api/system-current.txt | 1 + .../telephony/ims/ImsMmTelManager.java | 21 ++++--------------- .../telephony/ims/RegistrationManager.java | 2 ++ .../ims/stub/ImsRegistrationImplBase.java | 12 ++++++++--- 4 files changed, 16 insertions(+), 20 deletions(-) diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 039c6b154c15f..84d793bf98b88 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -12330,6 +12330,7 @@ package android.telephony.ims.stub { field public static final int REGISTRATION_TECH_IWLAN = 1; // 0x1 field public static final int REGISTRATION_TECH_LTE = 0; // 0x0 field public static final int REGISTRATION_TECH_NONE = -1; // 0xffffffff + field public static final int REGISTRATION_TECH_NR = 3; // 0x3 } public class ImsSmsImplBase { diff --git a/telephony/java/android/telephony/ims/ImsMmTelManager.java b/telephony/java/android/telephony/ims/ImsMmTelManager.java index d1a893f61e000..740332708dbce 100644 --- a/telephony/java/android/telephony/ims/ImsMmTelManager.java +++ b/telephony/java/android/telephony/ims/ImsMmTelManager.java @@ -713,15 +713,8 @@ public class ImsMmTelManager implements RegistrationManager { * @see android.telephony.CarrierConfigManager#KEY_CARRIER_VT_AVAILABLE_BOOL * @see android.telephony.CarrierConfigManager#KEY_CARRIER_IMS_GBA_REQUIRED_BOOL * @see #isAvailable(int, int) - * - * @param imsRegTech The IMS registration technology, can be one of the following: - * {@link ImsRegistrationImplBase#REGISTRATION_TECH_LTE}, - * {@link ImsRegistrationImplBase#REGISTRATION_TECH_IWLAN} - * @param capability The IMS MmTel capability to query, can be one of the following: - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_VOICE}, - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_VIDEO}, - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_UT}, - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_SMS} + * @param imsRegTech The IMS registration technology. + * @param capability The IMS MmTel capability to query. * @return {@code true} if the MmTel IMS capability is capable for this subscription, false * otherwise. * @hide @@ -748,14 +741,8 @@ public class ImsMmTelManager implements RegistrationManager { * * @see #isCapable(int, int) * - * @param imsRegTech The IMS registration technology, can be one of the following: - * {@link ImsRegistrationImplBase#REGISTRATION_TECH_LTE}, - * {@link ImsRegistrationImplBase#REGISTRATION_TECH_IWLAN} - * @param capability The IMS MmTel capability to query, can be one of the following: - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_VOICE}, - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_VIDEO}, - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_UT}, - * {@link MmTelFeature.MmTelCapabilities#CAPABILITY_TYPE_SMS} + * @param imsRegTech The IMS registration technology. + * @param capability The IMS MmTel capability to query. * @return {@code true} if the MmTel IMS capability is available for this subscription, false * otherwise. * @hide diff --git a/telephony/java/android/telephony/ims/RegistrationManager.java b/telephony/java/android/telephony/ims/RegistrationManager.java index c49121f4dc5d1..4713b7660e3ac 100644 --- a/telephony/java/android/telephony/ims/RegistrationManager.java +++ b/telephony/java/android/telephony/ims/RegistrationManager.java @@ -82,6 +82,8 @@ public interface RegistrationManager { AccessNetworkConstants.TRANSPORT_TYPE_INVALID); put(ImsRegistrationImplBase.REGISTRATION_TECH_LTE, AccessNetworkConstants.TRANSPORT_TYPE_WWAN); + put(ImsRegistrationImplBase.REGISTRATION_TECH_NR, + AccessNetworkConstants.TRANSPORT_TYPE_WWAN); put(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN, AccessNetworkConstants.TRANSPORT_TYPE_WLAN); }}; diff --git a/telephony/java/android/telephony/ims/stub/ImsRegistrationImplBase.java b/telephony/java/android/telephony/ims/stub/ImsRegistrationImplBase.java index 23032f0c4d383..35324a3c79754 100644 --- a/telephony/java/android/telephony/ims/stub/ImsRegistrationImplBase.java +++ b/telephony/java/android/telephony/ims/stub/ImsRegistrationImplBase.java @@ -56,7 +56,8 @@ public class ImsRegistrationImplBase { @IntDef(value = { REGISTRATION_TECH_NONE, REGISTRATION_TECH_LTE, - REGISTRATION_TECH_IWLAN + REGISTRATION_TECH_IWLAN, + REGISTRATION_TECH_NR }) @Retention(RetentionPolicy.SOURCE) public @interface ImsRegistrationTech {} @@ -65,13 +66,18 @@ public class ImsRegistrationImplBase { */ public static final int REGISTRATION_TECH_NONE = -1; /** - * IMS is registered to IMS via LTE. + * This ImsService is registered to IMS via LTE. */ public static final int REGISTRATION_TECH_LTE = 0; /** - * IMS is registered to IMS via IWLAN. + * This ImsService is registered to IMS via IWLAN. */ public static final int REGISTRATION_TECH_IWLAN = 1; + // REGISTRATION_TECH = 2 omitted purposefully. + /** + * This ImsService is registered to IMS via NR. + */ + public static final int REGISTRATION_TECH_NR = 3; // Registration states, used to notify new ImsRegistrationImplBase#Callbacks of the current // state.