在一些设备上的Osmdroid空白地图

时间:2016-08-13 10:40:17

标签: android osmdroid

在标记为重复之前,请阅读问题 我正在使用osmbonuspack在我的应用程序中显示地图,并在某些设备上继续获取空白地图。 需要帮助解决。

  1. 是的,我已经阅读了所有类似的问题,并尝试了解决方案。
  2. 是的,我已经为清单添加了写入外部存储权限(并且从Marshmallow开始请求权限运行时)。
  3. 是的,我已尝试使用TileSourceFactory.MAPQUESTOSM
    但自2016年7月以来它已不再可用。
  4. 这是初始化:

        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"/>
    

    感谢任何帮助

1 个答案:

答案 0 :(得分:1)

将用户代理设置为您的应用程序ID。看到 https://github.com/osmdroid/osmdroid/issues/366

OpenStreetMapTileProviderConstants.setUserAgentValue(BuildConfig.APPLICATION_ID);