Запуск Activity из службы и не требуется ввод с клавиатуры - PullRequest
0 голосов
/ 13 сентября 2011

Я запускаю действие из службы, которая отображает некоторый текст.

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

Возможно ли это? Я пробовал FLAG_NOT_FOCUSABLE, однако клавиша «Назад» по-прежнему не обрабатывается другими приложениями / игнорируется. Android через некоторое время продолжает давать опцию «Принудительное закрытие» или «Ожидание».

Любые указатели будут полезны.

Просто к вашему сведению, приложение "whitepages" делает что-то вроде этого - оно показывает диалоговое окно, однако не обрабатывает клавишу возврата.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 13 сентября 2011

Только сигнал, полученный в данный момент, получает сигнал нажатой кнопки.Все, что вы можете сделать, это перехватить нажатие кнопки «назад», введя:

 onBackPressed()

На старых устройствах это не совсем работает, и вам нужно будет сделать что-то вроде:

public boolean onKeyDown(int keyCode, KeyEvent event) 
{
  if (keyCode == KeyEvent.KEYCODE_BACK) {
    //Do something here
    return true;
  }
return super.onKeyDown(keyCode, event);
}

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

0 голосов
/ 13 сентября 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...