Как навигационные приложения работают в фоновом режиме и на переднем плане? - PullRequest
0 голосов
/ 10 мая 2019

Я новичок в разработке мобильных приложений и хочу написать приложение, аналогичное по функциональности приложениям навигации, таким как Waze и Google Maps, которые дают голосовые и визуальные указания пользователю, когда приложение находится на переднем плане, и продолжаютпредоставлять голосовые указания, когда приложение переходит в фоновый режим.

Мой вопрос: как навигационные приложения, такие как Waze и Google Maps, продолжают предоставлять инструкции по навигации, когда приложение изменяется между работой на переднем плане и работой в фоновом режиме?

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

Но как элемент управления плавно переключается между фоновой службой и основным потоком пользовательского интерфейса, когда пользователь переключается между передним планом и задним планом?d state?

Я не уверен, что это правильная логика приложения, поэтому я спрашиваю - всегда ли навигационные приложения используют фоновый сервис для непрерывного расчета маршрута - и дают звуковые указания, когда приложениенаходится в фоновом режиме и рисует маршрут на экране, когда он работает на переднем плане?

Кроме того, как это делается в разработке для iOS?Используются ли в iOS-приложениях та же логика?

Спасибо, Мик

...