Android: как получить долго работающий сервис для начала активности - PullRequest
0 голосов
/ 20 июля 2011

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

Большое спасибо

Ответы [ 2 ]

2 голосов
/ 20 июля 2011

Чтобы начать работу с широковещательным приемником, посмотрите здесь , например.

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

Запланируйте периодическое запуск службы с помощью AlarmManager .Не забудьте о wake lock , чтобы при необходимости разбудить устройство.

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

Существует еще кое-что, что вам нужно просто начать шаг за шагом и сделать это:)

1 голос
/ 20 июля 2011

Вы спрашиваете, как запустить службу при загрузке или запустить действие из службы?

Для более поздних операций Android запускается из службы , а для прежней Службы запуска Android во время загрузки

...