Wie kann ich programmgesteuert einen Anruf mit einem Anruf tätigen und wie kann ich feststellen, ob die Leitung, die ich anrufe, ausgeschaltet ist?

9

Ich möchte, dass meine Android-App erkennt, ob eine bestimmte Telefonnummer funktioniert, indem ich einen Anruf tätige (d. h. ich rufe die Nummer an, warte auf den ersten Klingelton auf meiner Seite und legte dann auf). Wenn es keinen Klingelton gibt (d. H. Das Telefon ist nicht verbunden), möchte ich es auch wissen. Es ist eine Art Ping auf eine Telefonnummer. Wenn das möglich ist, wie könnte es gemacht werden?

    
Frank 26.08.2017, 11:39
quelle

1 Antwort

0

Die Klänge, auf die Sie sich beziehen, werden 'Ringback' genannt. "Wählton" ist der Ton, den Sie hören, wenn Sie ein verbundenes Telefon aufheben, das gerade nicht angerufen wird.

Android Telephony -Klassen geben SDK-Anwendungen keinen Zugriff auf Audioaufzeichnungen, also Monitoring-Rückrufe sind nicht möglich, es sei denn, es wird auf das NDK zurückgegriffen (obwohl einige Leute erfolgreich berichtet haben, eingehende und ausgehende Audio mit Hacks aufrufen)

Das Problem mit Ihrem Ansatz ist, dass selbst wenn Sie es schaffen, den Ton zu hören, Sie den Ton auf der Leitung für eine Pause hören müssen - das ist nicht zuverlässig, weil einige Anbieter automatisierte Nachrichten für ungültige Status und andere sogar lesen Erlaube dem Benutzer, eigene Klingeltöne (z. B. ein Lied) hochzuladen.

Die beste Option für Sie besteht darin, darauf zu warten, wenn TelephonyManager.EXTRA_STATE_RINGING beginnt, und dann auf eine willkürliche Zeitspanne zu warten, bevor Sie auflegen. Andere Dinge wie CALL_STATE_OFFHOOK sind für Ihre Situation nicht relevant.

%Vor%     
Nick Cardoso 14.09.2017 10:58
quelle

Tags und Links