2013-12-17 3 views
0

Я совершенно новый для android. Я создаю приложение, использующее библиотеку android smack для связи с моим сервером XMPP. Я могу отправлять и получать сообщения, но я хочу, чтобы этот ENIRE отправлял и получал код сообщений в течение длительного времени в фоновом режиме и при получении определенного сообщения, которое я хочу запустить на экране (что-то похожее на входящий экран вызова андроида), независимо от того, что пользователь делает на своем смартфоне, т. е. когда работа, выполняющая службу обмена сообщениями, не открыта (аналогично, когда вы получаете входящий звонок от контакта viber, и вы сталкиваетесь с экраном, хотя вы, очевидно, не открываете приложение viber). Любые идеи о том, как именно это сделать? У меня есть несколько идей в виду после исследования, но, похоже, не получается правильно и склеить все грани вместе.Android: Как запускать экранные пользовательские интерфейсы (например, экран входящих вызовов) с помощью долгого фонового сервиса?

Заранее спасибо

ответ

0

вы можете использовать intentService общаться с mainThread

здесь является одним из основных примеров intentservice и обслуживания

http://mobile.tutsplus.com/tutorials/android/android-fundamentals-intentservice-basics/

пример службы

http://www.vogella.com/articles/AndroidServices/article.html

здесь является официальным документом

http://developer.android.com/reference/android/app/IntentService.html

+0

нормально это отлично подходит для перемещения обработки данных от потока пользовательского интерфейса и делать много работы в фоновых процессах. Я также понимаю, как я могу использовать службу намерения для передачи данных обратно в основной поток и использовать его, однако то, что я до сих пор не получаю, - это то, как я могу отобразить. Позволяет сказать всплывающее окно или какой-либо экран, когда запускается определенное событие, и этот экран/окно появляется независимо от того, открыто или закрыто основное действие (например, что происходит, когда вы получаете текстовое сообщение на viber. Появляется всплывающее окно, даже если ур телефон находится в режиме ожидания). Любая помощь была бы оценена и спасибо – user3071611

+0

, если вы хотите сделать то, что вы сказали, тогда вы можете использовать опрос или подключение к сокету, см. Здесь этот ответ http://stackoverflow.com/questions/7433774/android-sockets-vs-polling – Hardik

+0

и это может помочь вам http://stackoverflow.com/questions/6052426/best-way-to-have-an-android-app-poll-periodically-in-the-background – Hardik

Смежные вопросы