Требуется ли для этого приложения Android услуга / IntentService? - PullRequest
0 голосов
/ 31 мая 2011

/ ** начало псевдокода ** /

1) После указанной задержки приложение запрашивает данные с устройства Bluetooth.

2) Приложение сохраняет и анализирует данные.

3) Если результаты анализа ненормальные, приложение выдает аварийный сигнал и возвращается к шагу 1) с сокращенной задержкой.

В противном случае приложение возвращается к шагу 1) как обычно.

/ ** Конец псевдокода ** /

В настоящее время у меня есть работающая реализация, которая использует Timer и TimerTasks для многократного анализа некоторых данных в файле .txt после различных задержек. Позже при разработке приложения данные будут получены с устройства Bluetooth (эмулятор Android не поддерживает Bluetooth).

У меня не может быть основной поток пользовательского интерфейса, занятый обработкой этого материала, - мне нужна некоторая форма асинхронного (многопоточного) подхода (т. Е. TimerTask).

Мне также нужно, чтобы этот процесс анализа продолжался, даже если пользователь переключается на другое приложение.

Нужно ли использовать Service / IntentService, чтобы эта процедура приема и анализа Bluetooth оставалась активной?

Как начинающий разработчик Android, я был бы признателен за любые советы по этому вопросу. В настоящее время я пытаюсь понять, Службы и IntentServices .

Ответы [ 3 ]

2 голосов
/ 31 мая 2011

Если вы пытаетесь понять Service и IntentService, я бы порекомендовал вам взглянуть на этот пост и связанные с ним посты.Он сравнивает различные механизмы выполнения задач в Android и дает приблизительное представление о том, когда и что использовать.

1 голос
/ 31 мая 2011

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

0 голосов
/ 19 июля 2015

В прошлом я выполнял аналогичную задачу, читая данные по Bluetooth с помощью сервиса. Возможно, вам придется изучить использование безголового сервиса. Служба работает, даже когда вы переходите в другие приложения и когда вы возвращаетесь, привязывается к вашей активности.

...