PhoneStateListener
コードを使用して登録しました:
mTm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
mTm.listen(mPhoneStateListener, PhoneStateListener.LISTEN_CALL_STATE
| PhoneStateListener.LISTEN_CELL_LOCATION
| PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
コードを使用して登録を解除します。
mTm.listen(mPhoneStateListener, PhoneStateListener.LISTEN_NONE);
ただし、まれに、登録が解除された後でもリスナーが呼び出されることがあります。
重要な注意:
登録と登録解除はどちらも、UIスレッドではない同じスレッドから行われます。
質問:
テレフォニー状態が変更され、その変更がリスナーに「ポスト」され、リスナーが呼び出される前に登録が解除された場合、リスナーはとにかく呼び出されますか?または、「投稿されたメッセージ」は「キュー」から削除されますか?
登録と登録解除がUI以外のスレッドから行われるという事実は重要ですか?