Android監聽電話狀態

在OnCreate函數中

  PhoneCallListener phoneCallListener = new PhoneCallListener();
  TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
  tm.listen(phoneCallListener, PhoneStateListener.LISTEN_CALL_STATE);

寫一個PhoneCallListener函數

public class PhoneCallListener extends PhoneStateListener{
     @Override
     public void onCallStateChanged(int state, String incomingNumber) {
      switch(state){
      //無任何電話時
      case TelephonyManager.CALL_STATE_IDLE:
       myTextView.setText("CALL_STATE_IDLE");
       break;
         //接起電話時
      case TelephonyManager.CALL_STATE_OFFHOOK:
       myTextView.setText("CALL_STATE_OFFHOOK");
       break;
      //電話進來時
      case TelephonyManager.CALL_STATE_RINGING:
       myTextView.setText(incomingNumber);
       //發送郵件或發送短信
       sendSmsMesssage("18600092425", "成功發送短信了");
       break;
      default:
       break;
      }
      super.onCallStateChanged(state, incomingNumber);
     }

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章