Перехватывать входящий вызов и нажимать на веб-службу и отображать ответ на вызов, принимать панель отклонения Android?

Я хочу создать приложение для Android, которое будет делать следующее

  1. Перехватывает/прослушивает событие входящего вызова (я знаю, что этот шаг может иметь дубликаты на SO, но для полноты картины я спрашиваю)

  2. Берет на себя управление и обращается к веб-службе (HTTP POST), чтобы получить некоторую информацию из Интернета.

  3. И отображать то же самое, что и «виджет оповещения» поверх «кнопок приема/отклонения вызова», обычно это место, где мы получаем «лицо» контакта.

Основной вопрос: возможно ли разработать такое приложение на стандартном Android? если да, то как? Каковы последствия, если таковые имеются?

Решение должно работать и на последних версиях Android (начиная с версии 2.3, в версии 2.3 был спорный патч, который ломал приложения, полагающиеся на API частной телефонии Android)

http://developer.android.com/reference/android/content/BroadcastReceiver.html утверждает, что

В частности, вы не можете отображать диалоговое окно или привязываться к службе из BroadcastReceiver. В первом случае вам следует использовать API NotificationManager. В последнем случае вы можете использовать Context.startService() для отправки команды службе.


person Rakesh Waghela    schedule 13.12.2011    source источник


Ответы (1)


Для части 1) вы можете создать BroadcastReceiver и прослушивать

Действие TelephonyManager#ACTION_PHONE_STATE_CHANGED.

Это обработает ваше событие вызова.

Для части 2) необходимо написать AsyncTask, который выполняет < действие href="http://developer.android.com/reference/org/apache/http/client/methods/HttpPost.html" rel="nofollow">HttpPost для вашего веб-сервиса. В Интернете доступно множество руководств по выполнению действия HttpPost.

Теперь, когда вы реализуете AsyncTask, у вас есть onPostExecute< /а> метод. Внутри этого метода вы можете выполнить третью часть отображения с помощью диалогового окна предупреждений.

Надеюсь, поможет,

Всего наилучшего

Ваше здоровье

person Parth Doshi    schedule 13.12.2011