Цель: на платформе Android определить номер телефона человека, с которым пользователь разговаривает.Android: обнаружение активного номера телефона во время телефонного звонка
В настоящее время, используя PhoneListener, существует определенная двусмысленность в случае удержания вызовов.
Дело: пользователь разговаривает с кем-либо во время разговора («Звонок 1»). Таким образом, пользователь находится в состоянии вызова OFFHOOK. Затем пользователь находится в состоянии RINGING, указывая входящий телефонный звонок («Call 2»). Затем состояние переходит в положение OFFHOOK. Это может указывать на одну из двух возможностей: либо пользователь ответил на вызов 2, либо переместил вызов 1 на удержание. В качестве альтернативы пользователь отклонил вызов 2 и вернулся к вызову 1.
Как можно различать два случая? Можно ли определить номер телефона ТЕКУЩЕГО ЗВОНКА на телефоне?
Существует проблема двусмысленности - единственный раз, когда номер телефона получен, находится в состоянии RINGING. Это состояние не подразумевает, с кем разговаривает пользователь в данный момент, только что входящий звонок. Звонок 1 - номер телефона X. Звонок 2 входит, я получаю состояние RINGING с номера телефона Y. Теперь состояние возвращается в OFFHOOK. С кем я разговариваю? Я говорю с Call 1, номер телефона X или Call 2, номер телефона Y? Это проблема, которую я пытаюсь решить. – ChaimKut
, но этот метод всегда имеет значение rinining в качестве параметра, также если состояние OFFHOOK. Поэтому я думаю, что номер телефона в состоянии OFFHOOK - это номер телефона, с которым вы сейчас разговариваете. Но, конечно, вам нужно проверить или найти документацию по методу onCallStateChanged. –
Я тестирую NexusOne на 2.1, и OFFHOOK НЕ предоставляет номер телефона в качестве параметра, строка просто пуста (хотя это поле в методе onCallStateChanged). Можете ли вы подтвердить или отклонить это поведение на своем телефоне? Вот какой быстрый и грязный пример кода для тестирования: http://www.tutorialforandroid.com/2009/01/get-phone-state-when-someone-is-calling_22.html – ChaimKut