티스토리 뷰
Manifest에 Activity 밑에
<receiver android:name=".ServiceReceiver"> <intent-filter> <action android:name="android.intent.action.PHONE_STATE"> </action></intent-filter> </receiver>
를 추가해준다.
그리고 클래스 2개 생성
( ServiceReceiver , PhoneStateRead )
public class ServiceReceiver extends BroadcastReceiver {
private String TAG = "CallCatcher";
@Override
public void onReceive(Context context, Intent intent) {
PhoneStateRead phoneListener = new PhoneStateRead();
TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
telephony.listen(phoneListener, PhoneStateListener.LISTEN_SERVICE_STATE);
telephony.listen(phoneListener, PhoneStateListener.LISTEN_CALL_STATE);
}
}
public class PhoneStateRead extends PhoneStateListener {
String TAG = "PHONE STATE READ";
@Override
public void onCallStateChanged(int state, String incomingNumber) {
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
Log.i(TAG, "MyPhoneStateListener->onCallStateChanged() -> CALL_STATE_IDLE " + incomingNumber);
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
Log.i(TAG, "MyPhoneStateListener->onCallStateChanged() -> CALL_STATE_OFFHOOK " + incomingNumber);
break;
case TelephonyManager.CALL_STATE_RINGING:
Log.i(TAG, "MyPhoneStateListener->onCallStateChanged() -> CALL_STATE_RINGING " + incomingNumber);
break;
default:
Log.i(TAG, "MyPhoneStateListener->onCallStateChanged() -> default -> " + Integer.toString(state));
break;
}
}
}
'개발 > 개발 자료' 카테고리의 다른 글
| (아이폰) 싱글톤 전역변수 사용방법 (0) | 2014.01.29 |
|---|---|
| (Android) 갤러리 이미지 다중선택하기 ( 여러장 선택 ) (6) | 2014.01.29 |
| [iPhone] HTTP Request/Response Wrapper 클래스 만들기 (0) | 2014.01.20 |
| (ios7) 소스에서 화면 전환하기 (0) | 2014.01.16 |
| (Android) ImageView 라운드(둥근 테두리) 처리 (0) | 2014.01.06 |
댓글
