[英]How to get the phone number during an incoming and outgoing call?
I use a class that extends BroadcastReceiver.我使用一个扩展 BroadcastReceiver 的类。 how can I get the phone number during an incoming or outgoing call?
如何在来电或去电期间获取电话号码?
This is my department:这是我的部门:
public class MyCallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context , Intent intent) {
if (intent.getStringExtra( TelephonyManager.EXTRA_STATE ).equals( TelephonyManager.EXTRA_STATE_OFFHOOK )) {
//Call started
} else if (intent.getStringExtra( TelephonyManager.EXTRA_STATE ).equals( TelephonyManager.EXTRA_STATE_IDLE )) {
//Call ended
} else if (intent.getStringExtra( TelephonyManager.EXTRA_STATE ).equals( TelephonyManager.EXTRA_STATE_RINGING )) {
//Incoming call
}
} }
you can get it this way.你可以通过这种方式得到它。
public class CallRecevier extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
try {
TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
telephony.listen(new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String phoneNumber) {
super.onCallStateChanged(state, phoneNumber);
if (state == 1 || state == 2) {
if (phoneNumber != null && !phoneNumber.equals("")) {
Tİmber.e("Call Number: %s",phoneNumber);
}
}
}
}, PhoneStateListener.LISTEN_CALL_STATE);
} catch (Exception e) {
Timber.e("Error: %s", e.getLocalizedMessage());
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.