diff options
author | Brad Ebinger <breadley@google.com> | 2018-02-22 16:07:21 -0800 |
---|---|---|
committer | Brad Ebinger <breadley@google.com> | 2018-02-22 16:26:08 -0800 |
commit | 3ea793302fed57895659104fc8438e0e3ad44467 (patch) | |
tree | 26ed1e3cb7fe89ddab748b8d9a24879e71c991de /rcs | |
parent | 9388108bb9f0b8e49e706334064461620e81be4b (diff) | |
download | ims-3ea793302fed57895659104fc8438e0e3ad44467.tar.gz |
Destroys the Presence Service when service is down.
Also calls destroyPresenceService when UCE_SERVICE_DOWN
is received to make sure everything is cleaned up properly.
Bug: 73558136
Test: Manual
Change-Id: I3f02616c226b35e4979075c4073d1353b13e6455
Diffstat (limited to 'rcs')
-rw-r--r-- | rcs/rcsservice/src/com/android/service/ims/RcsStackAdaptor.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/rcs/rcsservice/src/com/android/service/ims/RcsStackAdaptor.java b/rcs/rcsservice/src/com/android/service/ims/RcsStackAdaptor.java index 151809f..6f1a076 100644 --- a/rcs/rcsservice/src/com/android/service/ims/RcsStackAdaptor.java +++ b/rcs/rcsservice/src/com/android/service/ims/RcsStackAdaptor.java @@ -709,6 +709,18 @@ public class RcsStackAdaptor{ private void clearImsUceService() { synchronized (mSyncObj) { + try { + logger.info("clearImsUceService: removing listener and presence service."); + if (mStackPresService != null) { + mStackPresService.removeListener(mStackPresenceServiceHandle, + mListenerHandle); + } + if (mStackService != null) { + mStackService.destroyPresenceService(mStackPresenceServiceHandle); + } + } catch (RemoteException e) { + logger.warn("clearImsUceService: Couldn't clean up stack service"); + } mImsUceManager = null; mStackService = null; mStackPresService = null; |