arcgis for android 离线地图实现

最近在做一个android的项目,需要实现离线地图,在网上找了好久 但是大多数的都是用一大堆的代码实现的,对于初学者来说却是有点困难。于是,参考了ArcGIS for android的帮助文档,整合网上参考资料,已经向大侠求助,最终找到了一个很好的解决方法,这里贴出来和大家一起分享。废话不多说……

 

 

1,要在ArcGIS Server中发布你的地图(发布地图请自己上网google),最好是有切片的地图,然后找到发布的文件夹

2,直接将文件夹考到SD卡的根目录上(也可以到其他的文件夹,但是要记住你的路径)

3,在eclipse中新建 ArcGIS for android项目(这个不用我再教你们了吧。不会的可以google)

3,配置layout文件,添加MapView控件


4,在代码中加入一下代码

//声明MapView
	MapView mMapView ;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        //实例化MapView
        mMapView= (MapView)findViewById(R.id.LocalMap);
        //存储切片文件路径
        String path="file:///mnt/sdcard/WorldMapCompact/Layers/";
		//声明并实例化ArcGISLocalTiledLayer
		ArcGISLocalTiledLayer localMap=new ArcGISLocalTiledLayer(path);
		//将离线地图加载到MapView中
		mMapView.addLayer(localMap);
    }

代码中的path就是存放在SD卡上的图片文件夹,这里的路径可以修改,请自行记好就OK啦!

 

5,加入权限,使手机有权限读取SD卡文件


 


6,运行 调试结果:

 

注意:有时出不来图,是因为你的手机在电脑上连接着,sd卡已经挂载,无法读取SD卡内容,或者有时需要在程序管理中强制停止程序后再打开才能出图。

 

你可能感兴趣的:(Adroid学习心得)