Информация об исходящих вызовах через Android BroadcastReceiver
Я хочу найти некоторые события после того, как я набрал номер, то есть на стороне получателя звонок принят или отклонен или занят или недоступен. Как найти эти события в Android. Я нашел некоторые API в android.TelephonyManager, но для IN_COMMING_CALL. И я использую BroadcastReceiver(), чтобы найти события после того, как я набрал номер. кусок кода есть,
public void onReceive(Context context, Intent intent) {
System.out.println("before if condition");
if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) {
System.out.println("**outgoingcall***");
}
};
Я не могу обнаружить, что вызов принят или отклонен или занят на устройстве назначения. Существуют ли какие-либо сетевые API для поиска этих событий во время outgoing_call в Android? Помогите мне, пожалуйста
также я использовал PhoneStateListener, код
private class ListenToPhoneState extends PhoneStateListener {
public void onCallStateChanged(int state, String incomingNumber) {
Log.i("telephony-example", "State changed: " + stateName(state));
}
String stateName(int state) {
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
System.out.println("phone is idle****");
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
System.out.println("phone is offhook****");
break;
case TelephonyManager.CALL_STATE_RINGING:
System.out.println("phone is Ringing***");
break;
}
return Integer.toString(state);
}
}
Но я не получаю события на Outgoing_call.. Спасибо, Шив
1 ответ
Используйте PhoneStateListener или следите за ACTION_PHONE_STATE_CHANGED вещательными намерениями.