Я пишу приложение, которое предназначено, чтобы быть выполненным во время вызова. После того, как пользователь звонит и запускает мое приложение, я хочу, чтобы мое приложение смогло знать, отбрасывается ли вызов от плохого соединения. Действительно ли это возможно?Спасибо
Класс Android TelephonyManager
предоставляет метод getCallState ()
, который сообщает вам статус текущего вызова. Вы будете искать переход с CALL_STATE_OFFHOOK
на CALL_STATE_IDLE
.
К сожалению, я не вижу никаких методов для регистрации обратного вызова, поэтому вам, возможно, придется прибегнуть к опросу.
http://developer.android.com/reference/android/telephony/TelephonyManager.html
Разве CALL_STATE_OFFHOOK -> CALL_STATE_IDLE также не указывает на нормально завершенный вызов?
Тем не менее, вы можете просто проверить состояние вызова с использованием метода обратного вызова onCallStateChanged класса PhoneStateListener. Он будет вызываться всякий раз, когда состояние изменяется, и вы можете переключить предоставленный статус, чтобы узнать, в каком состоянии он находится.