Кажется, вы хотите отслеживать местоположение пользователя в фоновом режиме.Если вы прочитали документы о Xamarin.Essentials: геолокация. Есть еще кое-что, что вы должны сделать.
в проекте iOS
1. Добавить конфиденциальность в info.plist
<key>NSLocationWhenInUseUsageDescription</key>
<string>This app needs access location when open.</string>
<key>NSLocationAlwaysAndWhenInUsageDescription</key>
<string>This app needs access location when open or in background.</string>
// support iOS 10 and before
<key>NSLocationAlwaysUsageDescription</key>
<string>This app needs access location when open.</string>
2 . Для задач, требующих больше времени для выполнения, необходимо запросить определенные разрешения для их запуска вфон без их приостановки.
Поддержка некоторых типов фонового выполнения должна быть заранее объявлена приложением, которое их использует.Вы объявляете фоновые режимы, которые поддерживает ваше приложение, на вкладке «Возможности» настроек вашего проекта в VS.Включение опции «Фоновые режимы» добавляет ключ UIBackgroundModes в файл Info.plist вашего приложения.
Для получения дополнительной информации о фоновом выполнении в iOS вы можете обратиться к этому документы
в проекте Android
Вы можете создать background service
.
Класс IntentService
обеспечивает прямолинейный доступструктура для запуска операции в одном фоновом потоке.Это позволяет ему обрабатывать длительные операции, не влияя на скорость отклика вашего пользовательского интерфейса.Кроме того, на IntentService
не влияют большинство событий жизненного цикла пользовательского интерфейса, поэтому он продолжает работать при обстоятельствах, которые приводят к отключению AsyncTask
.
Для получения более подробной информации вы можете обратиться к здесь .