Я пытаюсь использовать макеты в моем приложении для тестирования.Для получения обновлений местоположения я использовал последнюю документацию для разработчиков Android здесь: https://developer.android.com/training/location/receive-location-updates
В этом учебном пособии в качестве примера используются FusedLocationProviderClient и locationClient.requestLocationUpdates (createLocationRequest (), locationCallback, null).
Проблемаявляется то, что я больше не могу использовать разрешение:
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
, потому что я получаю сообщение об ошибке «Разрешение предоставляется только системным приложениям» (я пробовал также в режиме отладки)
Так я попробовалследующий код, но он не работает:
locationClient.setMockMode(true);
String[] tokens = location.split(",");
Location newLocation = new Location(LocationManager.GPS_PROVIDER);
newLocation.setLatitude(Float.parseFloat(tokens[0]));
newLocation.setLongitude(Float.parseFloat(tokens[1]));
newLocation.setAccuracy(3.0f);
newLocation.setTime(System.currentTimeMillis());
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
newLocation.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
}
locationClient.setMockLocation(newLocation);
У кого-нибудь есть идеи, как решить эту проблему?