Merge "Support API to toggle IMS on and off."

This commit is contained in:
Grace Jia
2020-01-24 18:36:40 +00:00
committed by Gerrit Code Review
3 changed files with 30 additions and 0 deletions

View File

@@ -9522,6 +9522,7 @@ package android.telephony {
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void requestNumberVerification(@NonNull android.telephony.PhoneNumberRange, long, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.NumberVerificationCallback);
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetAllCarrierActions();
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void resetCarrierKeysForImsiEncryption();
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) @WorkerThread public void resetIms(int);
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean resetRadioConfig();
method @RequiresPermission(android.Manifest.permission.CONNECTIVITY_INTERNAL) public void resetSettings();
method @Deprecated @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public int setAllowedCarriers(int, java.util.List<android.service.carrier.CarrierIdentifier>);

View File

@@ -6878,6 +6878,30 @@ public class TelephonyManager {
}
}
/**
* Resets the {@link android.telephony.ims.ImsService} associated with the specified sim slot.
* Used by diagnostic apps to force the IMS stack to be disabled and re-enabled in an effort to
* recover from scenarios where the {@link android.telephony.ims.ImsService} gets in to a bad
* state.
*
* @param slotIndex the sim slot to reset the IMS stack on.
* @hide */
@SystemApi
@WorkerThread
@RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE)
public void resetIms(int slotIndex) {
try {
ITelephony telephony = getITelephony();
if (telephony != null) {
telephony.resetIms(slotIndex);
}
} catch (RemoteException e) {
Rlog.e(TAG, "toggleImsOnOff, RemoteException: "
+ e.getMessage());
}
}
/**
* Enables IMS for the framework. This will trigger IMS registration and ImsFeature capability
* status updates, if not already enabled.

View File

@@ -827,6 +827,11 @@ interface ITelephony {
*/
void disableIms(int slotId);
/**
* Toggle framework IMS disables and enables.
*/
void resetIms(int slotIndex);
/**
* Get IImsMmTelFeature binder from ImsResolver that corresponds to the subId and MMTel feature
* as well as registering the MmTelFeature for callbacks using the IImsServiceFeatureCallback