Удержание WakeLock
и переднего плана Service
на самом деле не связаны и не должны сравниваться с тем, какое направление лучше.
ОС Android создана для обмена процессами на основе множества факторов. Это означает, что ваш процесс в любой момент может быть убит Android, и он предоставляет платформу, которая поможет вам, разработчику, гарантировать, что ваше приложение может сохранять и восстанавливать свое состояние, когда это происходит.
A WakeLock
просто предотвращает спящий процессор, что помогает экономить заряд батареи, когда телефон не используется.
Теперь комбинация того и другого поможет вам достичь того, чего вы хотите, но с большими затратами для пользователя. Я бы не хотел, чтобы приложение в моем телефоне поддерживало постоянную работу процессора, или значок уведомления постоянно отображался в панели уведомлений (это делает служба переднего плана).
Помните, что запуск службы в режиме переднего плана не гарантирует , что ваше приложение не будет убито. Это все еще может случиться, хотя и редко.
Чего вы пытаетесь достичь здесь? Зачем следить за приборами акселерометра? Возможно, вам следует отслеживать его только тогда, когда Activity
вашего приложения находится на переднем плане.