diff options
Diffstat (limited to 'src/java/com/android/ims/ImsManager.java')
-rw-r--r-- | src/java/com/android/ims/ImsManager.java | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java index 521b46ad..3a971cf4 100644 --- a/src/java/com/android/ims/ImsManager.java +++ b/src/java/com/android/ims/ImsManager.java @@ -1556,7 +1556,6 @@ public class ImsManager { throw new NullPointerException("registration callback can't be null"); } - checkAndThrowExceptionIfServiceUnavailable(); try { mMmTelFeatureConnection.addRegistrationCallback(callback); log("Registration Callback registered."); @@ -1568,6 +1567,27 @@ public class ImsManager { } /** + * Removes a previously added registration callback that was added via + * {@link #addRegistrationCallback(ImsRegistrationImplBase.Callback)} . + * @param callback A {@link ImsRegistrationImplBase.Callback} that was previously added. + * @throws ImsException when the ImsService connection is not available. + */ + public void removeRegistrationListener(ImsRegistrationImplBase.Callback callback) + throws ImsException { + if (callback == null) { + throw new NullPointerException("registration callback can't be null"); + } + + try { + mMmTelFeatureConnection.removeRegistrationCallback(callback); + log("Registration callback removed."); + } catch (RemoteException e) { + throw new ImsException("removeRegistrationCallback(IRIB)", e, + ImsReasonInfo.CODE_LOCAL_IMS_SERVICE_DOWN); + } + } + + /** * Adds a callback that gets called when MMTel capability status has changed, for example when * Voice over IMS or VT over IMS is not available currently. * @param callback A {@link ImsFeature.CapabilityCallback} that will notify the caller when |