Ich versuche zu erkennen, wenn ein Benutzer das Telefon beantwortet. Meine App wählt die Telefonnummer, aber ohne zu sehen, ob der Benutzer geantwortet hat, kann ich keine Schlüsselfunktion ausführen, die ich brauche. Es scheint, dass Sie dies in der Version 5 und höher, wie in diesem Beitrag gesehen, können, aber ich kann nicht herausfinden, wie es geht. Ich weiß, dass jemand eine Umgehung gefunden haben muss, weil, wie eine Person zuvor sagte, der Anruf-Timer startet, sobald der Benutzer antwortet, so muss es eine Möglichkeit geben, es zu erkennen. Diese Frage wurde viele Male gepostet, aber niemand gibt eine KORREKTE Antwort.Wie überprüft man, ob ein ausgehender Anruf in Android beantwortet wird?
Es scheint, die Antwort liegt in Tim S. hier beantworten:
Cannot detect when outgoing call is answered in Android
<uses-permission android:name="android.permission.READ_PRECISE_PHONE_STATE" />
<receiver android:name=".listener.OutCallLogger">
<intent-filter>
<action android:name="android.intent.action.PRECISE_CALL_STATE" />
</intent-filter>
</receiver>
public class OutCallLogger extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
switch (intent.getIntExtra(TelephonyManager.EXTRA_FOREGROUND_CALL_STATE, -2) {
case PreciseCallState.PRECISE_CALL_STATE_IDLE:
Log.d(This.LOG_TAG, "IDLE");
break;
case PreciseCallState.PRECISE_CALL_STATE_DIALING:
Log.d(This.LOG_TAG, "DIALING");
break;
case PreciseCallState.PRECISE_CALL_STATE_ALERTING:
Log.d(This.LOG_TAG, "ALERTING");
break;
case PreciseCallState.PRECISE_CALL_STATE_ACTIVE:
Log.d(This.LOG_TAG, "ACTIVE");
break;
}
}
}
Irgendwelche Antworten oder Anweisungen dafür? –
Haben Sie eine Lösung gefunden? – Mujtaba