У меня проблема с запуском событий геозоны на Xamarin.ios. Я помню, что раньше я использовал те же методы, что и раньше. Сейчас как-то не работает. Я использую следующий код, чтобы начать мониторинг:
CLLocationManager locMan = new CLLocationManager ();
locMan.RequestWhenInUseAuthorization ();
locMan.RequestAlwaysAuthorization ();
locMan.RegionEntered + = (sender, e) => {Console.WriteLine ("У вас есть вошел в регион »); };locMan.RegionLeft + = (отправитель, e) => {Console.WriteLine («Вы покинули регион»); };
CLCircularRegion aRegion2 = новый CLCircularRegion (новый CLLocationCoordinate2D (30.432, 97.7360), 100, «яблочный тест»);
locMan.StartMonitoring (aRegion2);
И это один демонстрационный проект, в котором я пытаюсь протестировать события геозоны, но не работает: https://github.com/aproram/Xamarin_ios_geofence_issue_demo
Я тестирую изменение местоположения в меню симулятора (Debug-> locaiton-> custom location). Иногда я получаю это сообщение в выводе консоли при изменении местоположения:
[Клиент] #Spi, прервано
Среда разработки:
Visual Studio v8.1
Xamarin.iOS Версия: 12.10.0.153
xCode 10.1
Симулятор iphone 6s (ios 12.1)
Следует упомянуть, что я попытался протестировать геозону с помощью проекта xCode SWIFT, и события были запущены. Так что я не уверен, проблема в моем коде C # или VS ..