Merge "Fix MmTelFeatureConnection Memory Leak" into rvc-dev

This commit is contained in:
Brad Ebinger
2020-05-20 19:07:49 +00:00
committed by Android (Google) Code Review
2 changed files with 31 additions and 0 deletions

View File

@@ -7394,6 +7394,29 @@ public class TelephonyManager {
return null;
}
/**
* Unregister a IImsServiceFeatureCallback previously associated with an ImsFeature through
* {@link #getImsMmTelFeatureAndListen(int, IImsServiceFeatureCallback)} or
* {@link #getImsRcsFeatureAndListen(int, IImsServiceFeatureCallback)}.
* @param slotIndex The SIM slot associated with the callback.
* @param featureType The {@link android.telephony.ims.feature.ImsFeature.FeatureType}
* associated with the callback.
* @param callback The callback to be unregistered.
* @hide
*/
public void unregisterImsFeatureCallback(int slotIndex, int featureType,
IImsServiceFeatureCallback callback) {
try {
ITelephony telephony = getITelephony();
if (telephony != null) {
telephony.unregisterImsFeatureCallback(slotIndex, featureType, callback);
}
} catch (RemoteException e) {
Rlog.e(TAG, "unregisterImsFeatureCallback, RemoteException: "
+ e.getMessage());
}
}
/**
* @return the {@IImsRegistration} interface that corresponds with the slot index and feature.
* @param slotIndex The SIM slot corresponding to the ImsService ImsRegistration is active for.

View File

@@ -850,6 +850,14 @@ interface ITelephony {
*/
IImsRcsFeature getRcsFeatureAndListen(int slotId, in IImsServiceFeatureCallback callback);
/**
* Unregister a callback that was previously registered through
* {@link #getMmTelFeatureAndListen} or {@link #getRcsFeatureAndListen}. This should always be
* called when the callback is no longer being used.
*/
void unregisterImsFeatureCallback(int slotId, int featureType,
in IImsServiceFeatureCallback callback);
/**
* Returns the IImsRegistration associated with the slot and feature specified.
*/