달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2012. 9. 16. 10:32

안드로이드 - 전화 수신 안드로이드 이야기2012. 9. 16. 10:32

728x90
반응형

안드로이드 - 전화 수신 

이렇게 하면 전화 벨 울릴 때 상대방 전화번호를 알 수 있습니다.

<receiver android:name=".CustomBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

package com.FakeCallActivity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import android.util.Log;
import android.widget.Toast;
public class CustomBroadcastReceiver extends BroadcastReceiver {

 @Override
 public void onReceive(Context context, Intent intent) {
  TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
  tm.listen(new PhoneStateListener() {

   @Override
   public void onCallStateChanged(int state, String incomingNumber) {
    Log.i("ghi", "     phone call state changed");
    if (state == TelephonyManager.CALL_STATE_IDLE) {    
     
     Log.i("PhoneCallState", "STATE_IDLE : Incoming number "+incomingNumber);
     }
     else if (state == TelephonyManager.CALL_STATE_RINGING) {
     Log.i("PhoneCallState", "STATE_RINGING : Incoming number "+incomingNumber);
     }
     else if (state == TelephonyManager.CALL_STATE_OFFHOOK) {
     Log.i("PhoneCallState", "STATE_OFFHOOK : Incoming number "+incomingNumber);
     }

    super.onCallStateChanged(state, incomingNumber);
   }
   
  }, PhoneStateListener.LISTEN_CALL_STATE);
 }

}
728x90
반응형
:
Posted by mapagilove