Как вывести на экран оповещение диолога (всплывающего окна) из запущенного сервиса backgroung? - PullRequest
1 голос
/ 03 августа 2011

У меня есть фон Service, который не привязан ни к одному приложению (или деятельности). Он отслеживает входящие сообщения, и при получении сообщения я должен показать одно диалоговое окно. Я попытался определить один метод для отображения диалогового окна предупреждения, но он дает исключение как "Can't create handler inside thread that has not called Looper.prepare()" Я действительно понятия не имею, как решить эту проблему. Я искал много постов, как это здесь, но не понимаю, как решить этот. Помощь высоко ценится. Спасибо.

Ответы [ 2 ]

2 голосов
/ 03 августа 2011

Создайте обработчик отдельно, как это.

private Handler handler = new Handler() {
 @Override
 public void handleMessage(Message msg) {

//Call you method in This one...
 displayDialog(); or whatever method name is
 }
};

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

handler.sendEmptyMessage(0);

2-е возможное решение:

поместите код вызова метода в следующее:

runOnUiThread(new Runnable(){

public void run(){

//Call the method here
}

});

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

Спасибо Shah

0 голосов
/ 03 августа 2011

Могут повториться вопросы

Если вы хотите открыть диалоговое окно из фоновой службы, вы не можете этого сделать, но есть способ открыть свою деятельность в виде диалога из службы для получения дополнительной информации и кода

перейдите по ссылке ниже

android: всплывающее окно чата

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