Пожалуйста, объясните Android Service
. Как он отличается от Activity
? Это зависит от состояния приложения, такого как запуск в переднего плана/фона?Служба Android
ответ
От Android Developer's SDK reference for Service:
услуги является компонент приложения, представляющий желание либо приложения для выполнения более длительного хода работы, а не взаимодействующих с пользователем или для обеспечения функциональности для других приложений.
Очень важно отметить
, что услуги, как и другие объекты приложения, работают в основном потоке процесса их хостинга. Это означает, что если ваша служба будет делать какие-либо интенсивные работы с ЦП (например, воспроизведение MP3) или блокирование (например, сетевые), она должна создать собственный поток, в котором будет выполняться эта работа.
Это в отличие от деятельности, которая лучше всего понимается как что-то пользователь непосредственно видит и взаимодействует с (ПИ).
услуга, как упоминалось выше, может быть использована для более длинных выполняющихся операций это будет продолжаться, даже если у вас нет активности переднего плана, но они могут и в конечном итоге будут уничтожены жизненным циклом Android, если они останутся в «фоновом» состоянии. Если вам нужна ваша служба для продолжения работы как одного экземпляра без его увольнения и перезапуска, я бы порекомендовал разместить startForeground(int id, Notification notification) в методе onCreate
вашего Сервиса и stopForeground(boolean removeNotification) в методе вашего Сервиса.
Например, у меня есть приложение, которое использует foreground Service
для записи данных акселерометра всю ночь, когда устройство Android находится рядом с телом пользователя. Хотя это не требуется, чтобы быть активным, у меня также есть Activity
что транслируют Intent
к BroadcastReceiver
внутри Service
который говорит Service
, что он также должен транслировать Intent
с данными акселерометра в качестве массовки в виде BroadcastReceiver
внутри Activity
.
Код: SleepActivity SleepAccelerometerService
Удачи и дайте мне знать, если вам нужно больше информации!
a Служба - это контекст, подобный Activity, но не имеющий графического интерфейса.
Важно: Служба не запускается в новом потоке!
Читайте о Service, а также проверить How to always run a service in the background?
- 1. Служба Android
- 2. Справочная служба для Android android
- 3. Служба намерений для Android android
- 4. Служба Android AlarmManager
- 5. Служба уведомлений для Android
- 6. Android и служба RESTful
- 7. Служба поддержки Android AsyncTask
- 8. Служба Android не останавливается
- 9. Служба Android не запустится
- 10. Служба Android, отслеживание объектов
- 11. Android-служба подключения отключена
- 12. Android Служба не работает
- 13. Служба Android не запущена
- 14. Служба поддержки Android
- 15. Служба Android && app
- 16. Служба Android получает убитых
- 17. Служба WCF для Android
- 18. Служба бесплатности Android
- 19. Служба GPS в Android
- 20. Служба Android не запускается
- 21. Служба Android останавливается автоматически
- 22. Служба Android не останавливается
- 23. Служба поддержки Android
- 24. Служба Android java.lang.IndexOutOfBoundsException
- 25. Удаленная служба Android
- 26. Служба Android vs thread
- 27. Continuous Справочная служба Android
- 28. Служба остановлена Android
- 29. Служба в android 5.0+
- 30. Служба уведомлений в Android
нарушена ваша вторая ссылка «SleepAccelerometerService». – gonzobrains 2013-04-25 21:02:32