public void dispose() { CatLog.d(this, "Disposing CatService object for slot: " + mSlotId); // Clean up stk icon if dispose is called broadcastCardStateAndIccRefreshResp(CardState.CARDSTATE_ABSENT, null); mCmdIf.unSetOnCatSessionEnd(this); mCmdIf.unSetOnCatProactiveCmd(this); mCmdIf.unSetOnCatEvent(this); mCmdIf.unSetOnCatCallSetUp(this); mCmdIf.unSetOnCatCcAlphaNotify(this); mCmdIf.unSetOnCatSendSmsResult(this); mCmdIf.unregisterForIccRefresh(this); if (mUiccController != null) { mUiccController.unregisterForIccChanged(this); mUiccController = null; } if (mMsgDecoder != null) { mMsgDecoder.dispose(mSlotId); mMsgDecoder = null; } mHandlerThread.quit(); mHandlerThread = null; removeCallbacksAndMessages(null); }
public void dispose() { mIccRecords.unregisterForRecordsLoaded(this); mCmdIf.unSetOnCatSessionEnd(this); mCmdIf.unSetOnCatProactiveCmd(this); mCmdIf.unSetOnCatEvent(this); mCmdIf.unSetOnCatCallSetUp(this); this.removeCallbacksAndMessages(null); }