2012-03-25 12 views
1

Ich würde gerne wissen, ob der Grund, warum eine Sprachverbindung (bei einem Telefonanruf) nicht hergestellt wurde, ist, weil ein Besetztzeichen vorhanden war oder weil die andere Seite den Anruf nicht angenommen hat.In der Android-API gibt es eine Möglichkeit, den Grund zu erhalten, warum eine Sprachverbindung nicht hergestellt wurde?

Gibt es API, um diese Informationen zu erhalten? Wenn die Antwort nein ist, dann würde ich gerne wissen, ob diese Informationen von GSM-Hardware/Treiber überhaupt zur Verfügung gestellt werden?

+0

Der Vollständigkeit halber nehme ich an, dass Sie die API-Dokumentation durchsuchen und nichts herausspringt? – Kev

Antwort

0

Selbst wenn Sie das Detail der Trennungsmeldung abfragen könnten (und ich glaube nicht, dass Sie mit den aktuellen Android-APIs können), würden Sie immer noch auf die verschiedenen Switches/Protokolle/Operatoren in der Ende-zu-Ende-Verbindung angewiesen sein Mapping der Gründe für die Trennung zurück genau, die möglicherweise nicht 100% zuverlässig, insbesondere bei internationalen Anrufen und älteren Netzwerken.

Wenn Sie nur einen Ansatz benötigen, der in der Regel richtig ist, anstatt 100% der Zeit korrekt sein zu müssen, dann können Sie ihn einfach auf die Zeit zurückführen, die für das Zurücksetzen der Nachricht benötigt wird. mit anderen Worten, wenn es lange dauert, ist es wahrscheinlicher, dass der Anruf abgelaufen ist und darauf gewartet hat, dass jemand antwortet.

Mit der Prävalenz von Voicemail in diesen Tagen können Sie feststellen, dass die meisten Anrufe auf die eine oder andere Art und Weise beantwortet werden, abhängig von dem Land/Netz, an dem Sie interessiert sind (z. B. Mobilgeräte sind in der Regel eher Voicemail als Festnetz immer noch).