Add new provisioning flag for VOIMS opt-in

Bug: 177009570
Test: By Manual
1. Call setProvisioningIntValue() and getProvisioningIntValue()

2. Enable/disable the value and dial a VoLTE call
2-1. Set value to 1
2-2. Dial a call
2-3. From ImsPhoneCallTracker and GsmCdmaPhone's log, VoLTE is
 registered and device is trying IMS PS call
2-4. Set value to 0
2-5. Dial a call
2-6. From ImsPhoneCallTracker and GsmCdmaPhone's log, VoLTE is
unregistered and device is trying (non-IMS) CS call

3. atest

Change-Id: I0b8af8fe6c9a34a56f9e2275df0a03ba093f439e
Merged-In: I0b8af8fe6c9a34a56f9e2275df0a03ba093f439e
This commit is contained in:
Jayachandran Chinnakkannu
2021-02-18 20:55:44 +08:00
committed by Calvin Pan
parent d5eb6fb0ef
commit 1fe2aa14c4
5 changed files with 41 additions and 0 deletions

View File

@@ -5334,5 +5334,13 @@ public final class Telephony {
* @hide
*/
public static final String COLUMN_D2D_STATUS_SHARING = "d2d_sharing_status";
/**
* TelephonyProvider column name for VoIMS provisioning. Default is 0.
* <P>Type: INTEGER </P>
*
* @hide
*/
public static final String COLUMN_VOIMS_OPT_IN_STATUS = "voims_opt_in_status";
}
}

View File

@@ -907,6 +907,14 @@ public class SubscriptionManager {
*/
public static final String PROFILE_CLASS = SimInfo.COLUMN_PROFILE_CLASS;
/**
* TelephonyProvider column name for VoIMS opt-in status.
*
* <P>Type: INTEGER (int)</P>
* @hide
*/
public static final String VOIMS_OPT_IN_STATUS = SimInfo.COLUMN_VOIMS_OPT_IN_STATUS;
/**
* Profile class of the subscription
* @hide

View File

@@ -865,6 +865,19 @@ public class ProvisioningManager {
*/
public static final int KEY_VOICE_OVER_WIFI_ENTITLEMENT_ID = 67;
/**
* An integer key representing the voice over IMS opt-in provisioning status for the
* associated subscription. Determines whether the user can see for voice services over
* IMS.
* <p>
* Use {@link #PROVISIONING_VALUE_ENABLED} to enable VoIMS provisioning and
* {@link #PROVISIONING_VALUE_DISABLED} to disable VoIMS provisioning.
* @see #setProvisioningIntValue(int, int)
* @see #getProvisioningIntValue(int)
* @hide
*/
public static final int KEY_VOIMS_OPT_IN_STATUS = 68;
/**
* Callback for IMS provisioning changes.
*/

View File

@@ -47,4 +47,6 @@ interface IImsConfig {
void removeRcsConfigCallback(IRcsConfigCallback c);
void triggerRcsReconfiguration();
void setRcsClientConfiguration(in RcsClientConfiguration rcc);
void notifyIntImsConfigChanged(int item, int value);
void notifyStringImsConfigChanged(int item, String value);
}

View File

@@ -258,6 +258,16 @@ public class ImsConfigImplBase {
public void setRcsClientConfiguration(RcsClientConfiguration rcc) throws RemoteException {
getImsConfigImpl().setRcsClientConfiguration(rcc);
}
@Override
public void notifyIntImsConfigChanged(int item, int value) throws RemoteException {
notifyImsConfigChanged(item, value);
}
@Override
public void notifyStringImsConfigChanged(int item, String value) throws RemoteException {
notifyImsConfigChanged(item, value);
}
}
/**