[問題] 監聽電話
我寫了一個監聽電話功能在我APP內。參照網路上實作都可以實作出來。
但是當我滑掉APP時,打電話到我的手機上實APK竟然還可以偵測到。表示我APK
根本沒有release。我滑掉APK一下再開一次,打電話時會出現兩次,
再滑掉APK再開一次會出現三次依此類推。以下是我的code
MainActivity:
onCreate(){
telM = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
telM.listen(new TelListener(this),
PhoneStateListener.LISTEN_CALL_STATE);
}
protected onDestroy(){
telM.listen(new TelListener(null), PhoneStateListener.LISTEN_NONE);
telM = null;
finish();
}
Telistener:
public class TelListener extends PhoneStateListener {
switch (state) {
case TelephonyManager.CALL_STATE_RINGING://此时为响铃状态
//這邊出現好多次
LocalBroadcastManager.getInstance(mContext).sendBroadcast(intent);
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
break;
case TelephonyManager.CALL_STATE_IDLE:
break;
}
super.onCallStateChanged(state, incomingNumber);
}
請問有沒有人遇過這種狀況呢?
以下LZN大已有幫我解答上面的疑問非常感謝。大致整理了一下我的錯誤還有額外的疑問
------------------------------------------------------------------------------
我懷疑APK沒有release是因為我還有寫個 NotificationListenerService,需要在
安著手機的設定 -> 應用程式 -> 特別存取權-> 通知存取權 選擇我的service打開
這樣我的APK就能接收到應用程式的通知。
打開這個service之後,我明明已經滑掉APK了,有看到他呼叫onDestroy()。
我打電話時,卻還是收到 call event。
我將 service 關掉後,一樣保持在 onCreate() 內
telM = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
telM.listen(new TelListener(this),
PhoneStateListener.LISTEN_CALL_STATE);
滑掉APK後就不會有 event 上來了。再重開一次也不會有重複的event。
第一個問題是: 為何我開啟service,滑掉apk後,他會呼叫 onDestroy(),而關掉
service,滑掉APK卻不會呼叫 onDestroy()?
第二個問題是: 為何我將service打開時,滑掉APK,卻仍然有 call event 上來?
這看似APK就是真的沒有 release? 但是我打開APK時,裏面的變數
如:onCreate() telM明明也就是 null的,難道他之前
telM.listen(new TelListener(this)
new TelListener(this) 完全沒釋放嗎?
打得很長^^"不知道有沒有人看懂我的問題.. 感謝指教
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.220.69.181
※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1519371217.A.4CE.html
※ 編輯: gn00618777 (61.220.69.181), 02/23/2018 15:50:38
→
02/23 16:30,
6年前
, 1F
02/23 16:30, 1F
→
02/23 16:31,
6年前
, 2F
02/23 16:31, 2F
→
02/23 16:31,
6年前
, 3F
02/23 16:31, 3F
→
02/23 16:53,
6年前
, 4F
02/23 16:53, 4F
→
02/23 16:54,
6年前
, 5F
02/23 16:54, 5F
※ 編輯: gn00618777 (61.220.69.181), 02/23/2018 17:27:08
※ 編輯: gn00618777 (61.220.69.181), 02/23/2018 17:29:02
※ 編輯: gn00618777 (61.220.69.181), 02/23/2018 17:29:25
推
02/23 19:51,
6年前
, 6F
02/23 19:51, 6F
→
02/26 12:16,
6年前
, 7F
02/26 12:16, 7F
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章