[英]Handling incoming calls in Android
I want to handle incoming call in Android. 我想处理Android中的来电。
Actually I want to set a time duration in which if my cell phone receive any call then automatically a message send to each of them. 实际上,我想设置一个持续时间,如果我的手机接到任何电话,则会自动向每一个发送一条消息。
Any ideas? 有任何想法吗?
Just extend your class to PhoneStateListener
and override onCallStateChanged
method. 只需将您的类扩展到
PhoneStateListener
并覆盖onCallStateChanged
方法。 Sample code: 样例代码:
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);
}
}
You need to declare PhoneStateListener
in your Activity
or Service
: 您需要在
Activity
或Service
声明PhoneStateListener
:
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);
}
};
And add following permission to AndroidManifest.xml
: 并向
AndroidManifest.xml
添加以下权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
Hope this helps. 希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.