#android #mock-location
#Android #макет местоположения
Вопрос:
Я пытаюсь создать простой макет местоположения для Android (Android 7.0). Я получаю Java.Lang.SecurityException
ответ… не разрешено выполнять исключение MockLocationException. У меня есть android.permission.ACCESS_MOCK_LOCATION
в файле манифеста. Я также попробовал то же самое с Xamarin
и получил ту же ошибку.
Location location = new Location(LocationManager.GpsProvider);
location.Latitude = 20.0;
location.Longitude = 20.0;
location.Accuracy = 0;
location.Time = DateTime.Now.Ticks;
location.ElapsedRealtimeNanos = 100;
location.Speed = 0.0f;
location.Altitude = 1.0;
location.Bearing = 0.0f;
LocationManager locationManager = GetSystemService(LocationService) as
LocationManager;
locationManager.AddTestProvider(LocationManager.GpsProvider, false,
false, false, false, false, false, false, Power.Low,
Android.Hardware.SensorStatus.AccuracyHigh);
// getting exception on the above line
locationManager.SetTestProviderLocation(LocationManager.GpsProvider,
location);
locationManager.SetTestProviderEnabled(LocationManager.GpsProvider, true);
Комментарии:
1. пожалуйста, укажите, решило ли это проблему…
2. Проблема, которую я вижу, заключается в том, что я не могу выбрать свое приложение в качестве поставщика ложного местоположения (в настройках Android). Однако я мог видеть имя своего приложения в списке поставщиков ложных местоположений. Но в списке есть и другие приложения, и их также можно выбрать.
3. прокрутите this…forum.xda-developers.com/nexus-6/help /…
Ответ №1:
Вам необходимо включить Разрешить фиктивные местоположения в настройках — Параметры разработчика на вашем устройстве и добавить разрешение ACCESS_MOCK_LOCATION в свой манифест. Это позволит вам отправлять ложные местоположения в ваше приложение