Xamarin Forms iOS, как вывести приложение на передний план - другие приложения делают это - PullRequest
0 голосов
/ 08 ноября 2018

Я работаю над приложением Xamarin Forms. Он должен вывести себя на передний план после того, как через некоторое время его фоновые службы будут использовать сервисы определения местоположения (фоновый режим). Как этого достичь?

Я заметил, что другие приложения делают это в магазине приложений.

Любая помощь будет высоко ценится! Спасибо

1 Ответ

0 голосов
/ 09 ноября 2018

Вы можете использовать startMonitoringSignificantLocationChanges для достижения этой цели.

В яблочном документе https://developer.apple.com/documentation/corelocation/cllocationmanager/1423531-startmonitoringsignificantlocati написано:

Если вы запустите эту службу, и ваше приложение будет впоследствии остановлено, система автоматически перезапустит приложение в фоновом режиме, если наступает новое событие. В этом случае словарь опций передается приложение (: willFinishLaunchingWithOptions :) и методы приложения (: didFinishLaunchingWithOptions :) вашего приложения делегат содержит ключевое местоположение, чтобы указать, что ваше приложение было запущен из-за события местоположения. После перезапуска вы должны еще настройте объект диспетчера местоположения и вызовите этот метод для продолжения получение места событий. При перезапуске служб определения местоположения текущее событие доставляется вашему делегату немедленно. К тому же, свойство location вашего объекта менеджера местоположений заполнено с самым последним объектом местоположения еще до того, как вы начнете определять местоположение услуги.

После перезапуска вы можете сделать что-то в FinishedLaunching в AppDelegate:

 public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
        {
            // Override point for customization after application launch.
            // If not required for your application you can safely delete this method

            if (launchOptions.ContainsKey(UIApplication.LaunchOptionsLocationKey))
            {
                // do something here after the app awaked
            }

            return true;
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...