如何在 Android 中创建离线地图?
How to create offline map in Android?
我想在 Android 中创建离线地图应用程序。我发现将 Mobile Atlas creator 与 Open Street Map 结合使用是可能的。后来我发现 Mobile Atlas creator 不支持 Open Street Map(创建 zip 文件时的 Mapink 选项)。我想知道创建离线地图的正确程序。如果你能给我一个教程我会非常感谢你link..谢谢你
我是这样做的:
- 使用 Mobile Atlas Creator 创建 Osmdroid ZIP 图集
- 重命名您的 zip 文件 "tiles.zip"
- 在 phone 存储中创建一个名为 osmdroid 的文件夹并将 zip 文件复制到那里
- 在您的 android 项目中导入 Osmdroid 库(目前最新版本 'org.osmdroid:osmdroid-android:5.1@aar' )
在您的 activity xml 文件中添加:
<org.osmdroid.views.MapView
android:id="@+id/mapview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="true" />
- 在您的 java 文件中添加:
private MapView mapView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mapView = (MapView) findViewById(R.id.mapview);
mapView.setClickable(true);
mapView.setBuiltInZoomControls(true);
mapView.setMultiTouchControls(true);
mapView.setUseDataConnection(false);
mapView.setTileSource(TileSourceFactory.MAPQUESTOSM);
}
它应该有效:)
我想在 Android 中创建离线地图应用程序。我发现将 Mobile Atlas creator 与 Open Street Map 结合使用是可能的。后来我发现 Mobile Atlas creator 不支持 Open Street Map(创建 zip 文件时的 Mapink 选项)。我想知道创建离线地图的正确程序。如果你能给我一个教程我会非常感谢你link..谢谢你
我是这样做的:
- 使用 Mobile Atlas Creator 创建 Osmdroid ZIP 图集
- 重命名您的 zip 文件 "tiles.zip"
- 在 phone 存储中创建一个名为 osmdroid 的文件夹并将 zip 文件复制到那里
- 在您的 android 项目中导入 Osmdroid 库(目前最新版本 'org.osmdroid:osmdroid-android:5.1@aar' )
在您的 activity xml 文件中添加:
<org.osmdroid.views.MapView android:id="@+id/mapview" android:layout_width="match_parent" android:layout_height="match_parent" android:clickable="true" />
- 在您的 java 文件中添加:
private MapView mapView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mapView = (MapView) findViewById(R.id.mapview); mapView.setClickable(true); mapView.setBuiltInZoomControls(true); mapView.setMultiTouchControls(true); mapView.setUseDataConnection(false); mapView.setTileSource(TileSourceFactory.MAPQUESTOSM); }
它应该有效:)