Вывести приложение для набора номера на передний план из фона после завершения телефонного звонка

Это текущий механизм:

  1. Я звоню из своего приложения (приложение остается в фоновом режиме)
  2. Телефонный звонок завершен
  3. Система запускает android.intent.action.view, и мое приложение слушает его, поэтому я могу запустить свое приложение, чтобы отобразить журнал вызовов.

Проблема в том, что создается новый экземпляр моего приложения вместо того, чтобы выводить другой на передний план. Это проблема, потому что для повторной загрузки приложения требуется некоторое время, а мне нужно мгновенное, очень быстрое действие.

Я хотел бы избежать времени загрузки, поэтому это было бы идеальным решением:

... 3. Система запускает намерение, и мое фоновое приложение выходит на передний план (вместо того, чтобы запускать его снова) и выполняет свою работу

Я читал, что, возможно, это невозможно сделать из-за безопасности, но мое приложение все равно запустится, я просто хочу сделать его быстрее, поэтому я надеюсь, что есть решение.


person keybee    schedule 21.08.2013    source источник


Ответы (2)


Вы пытались установить android:launchMode = "singleInstance" в файле androidmanifest.xml?

person Ronnie    schedule 21.08.2013

Я решил это с новым флагом задачи и передачей параметров в phonestatelistener. Интересно, что иногда состояние телефона меняется во время звонка чуть ли не "наугад", что затрудняет обработку случаев на всех телефонах и версиях ОС.

person keybee    schedule 23.10.2013