2016-08-13 4 views
0

Прежде чем отмечать как дубликат, пожалуйста, прочитайте вопрос.
Я использую osmbonuspack для отображения карт в своем приложении и продолжаю получать пустую карту на некоторых устройствах. Нужна помощь в решении.Пустая карта Osmdroid на некоторых устройствах

  1. Да, я прочитал все похожие вопросы и попробовал предлагаемые решения.
  2. Да, я добавил запись внешнего хранилища в манифест (и запрашивает время выполнения разрешений с Marshmallow).
  3. Да, я пытался использовать TileSourceFactory.MAPQUESTOSM,
    , но это больше не доступен с июля 2016 года

Вот инициализация:

mMapView = (MapView) aq.id(R.id.mapview).getView(); 
    mMapView.setMultiTouchControls(true); 
    mMapView.setTileSource(TileSourceFactory.MAPNIK); 

    mMapController = (MapController) mMapView.getController(); 
    mMapController.setZoom(14); 
    mMyLocationMarker = new MyLocationNewOverlay(getActivity(), mMapView); 
    mMyLocationMarker.enableFollowLocation(); 
    mMapView.getOverlays().add(mMyLocationMarker); 

Здесь проявляются разрешения:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
    <uses-permission android:name="android.permission.INTERNET"/> 
    <uses-permission android:name="android.permission.ACCESS_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
    <uses-permission android:name="android.permission.READ_INTERNAL_STORAGE"/> 
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> 

Любая помощь с учетом

+0

Open Street Map изменилось в последние пару дней. У меня была такая же проблема: http: //stackoverflow.com/questions/38921072/osmdroid-maptiledownloader-now-showing-403-forbidden-as-http-response Этот ответ был верным для меня. – NickT

+0

Прохладный, спасибо, попробуем это –

ответ

1

Установите агент пользователя на свой идентификатор приложения. См https://github.com/osmdroid/osmdroid/issues/366

OpenStreetMapTileProviderConstants.setUserAgentValue(BuildConfig.APPLICATION_ID);

+0

Спасибо, он решил проблему! –