使用osmdroid构建应用程序时未渲染地图

时间:2019-05-19 21:01:11

标签: android openstreetmap osmdroid

我正在使用Android Studio使用osmdroid构建一个简单的OSM地图应用程序。我希望显示一张地图,然后在其上构建一个导航系统。我使用了osmbonuspack的this教程0。

问题是未渲染地图。我附加了模拟器的ScreenShot。使用此link查看屏幕截图。

我是应用程序开发的新手,我认为build.gradle文件有问题。我尝试将gradle与其他版本同步,但没有成功。此外,我还包括了每个清单文件的权限。

我正在附加我的build.gradle文件,activitymain.java文件AndroidManifest和模拟器的ScreenShot的代码。

我希望在跟随tutorial0之后,将显示/显示带有标记的地图。

谢谢。

ActivityMain.java

public class MainActivity extends Activity {

@Override public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Configuration.getInstance().setUserAgentValue(getPackageName());



    MapView map = (MapView) findViewById(R.id.map);
    map.setTileSource(TileSourceFactory.MAPNIK);
    map.getZoomController();
    map.setMultiTouchControls(true);

    GeoPoint startPoint = new GeoPoint(48.13, -1.63);
    IMapController mapController = map.getController();
    mapController.setZoom(9.0);
    mapController.setCenter(startPoint);

    map.invalidate();



    //for markers
    Marker startMarker = new Marker(map);
    startMarker.setPosition(startPoint);
    startMarker.setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM);
    map.getOverlays().add(startMarker);


    startMarker.setIcon(getDrawable(R.drawable.ic_launcher));

    startMarker.setTitle("Start point");

    map.invalidate();


}

}

build.gradle

dependencies {

implementation fileTree(dir: 'libs', include: ['*.jar'])

implementation 'com.android.support:appcompat-v7:28.0.0'

implementation 'com.android.support.constraint:constraint-layout:1.1.3'

testImplementation 'junit:junit:4.12'

androidTestImplementation 'com.android.support.test:runner:1.0.2'

androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'


implementation 'org.osmdroid:osmdroid-android:6.1.0'
implementation ( name: 'osmbonuspack_v6.6.0', ext:'aar')

}

AndoidManifest

<?xml version="1.0" encoding="utf-8"?>

<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.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

0 个答案:

没有答案