我想处理Android中的来电 实际上我想设置一个持续时间,如果我的手机接到任何电话,那么会自动向每个电话发送一条消息。
有什么想法吗?
答案 0 :(得分:3)
只需将您的课程扩展到PhoneStateListener
并覆盖onCallStateChanged
方法即可。示例代码:
class myCallListener extends PhoneStateListener{
@Override
public void onCallStateChanged(int state, String incomingNumber) {
// TODO Auto-generated method stub
switch (state) {
case TelephonyManager.CALL_STATE_RINGING:
// your logic here
break;
default:
break;
}
super.onCallStateChanged(state, incomingNumber);
}
}
答案 1 :(得分:0)
您需要在PhoneStateListener
或Activity
中声明Service
:
PhoneStateListener phoneStateListener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if (state == TelephonyManager.CALL_STATE_RINGING) {
....
} else if(state == TelephonyManager.CALL_STATE_IDLE) {
....
} else if(state == TelephonyManager.CALL_STATE_OFFHOOK) {
....
}
super.onCallStateChanged(state, incomingNumber);
}
};
并向AndroidManifest.xml
添加以下权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
希望这有帮助。