欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

arcgis for android 加载tpk离线资料

更新时间: 2014-01-05 02:02:49 责任编辑: Author_N1

 

ArcGis for android 加载tpk离线文件

ArcGis for android 加载tpk离线文件

1.安装 arcgis android sdk (必须安装过 android sdk及 adt 环境喲)

创建一个本地缓存arcgis android项目 

如下代码

package com.esri.arcgis.android.samples.localtiledlayer;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;

import com.esri.android.map.MapView;
import com.esri.android.map.ags.ArcGISLocalTiledLayer;

/**
* This sample illustrates the use of ArcGISLocatlTiledLayer where the data is stored locally on the device, therefore 
* this layer can function even when the device does not have any network connectivity. The data for this layer must be 
* in an ArcGIS Compact Cache format (Tile Packages or .tpk's are not currently supported).
* The typical compact cache structure is as  follows:
*	<CacheName><br>
*		Layers<br>
*			_allLayers<br>
*				conf.cdi,conf.xml<br>
* The path used in the constructor of the ArcGISLocalTiledLayer must point to the Layers folder e.g. <br>
*  ArcGISLocalTiledLayer local = new ArcGISLocalTiledLayer("file:///mnt/sdcard/<CacheName>/Layers");
*  
*  A sample data set has been created and is available via ArcGIS Online:
*  http://www.arcgis.com/home/item.html?id=d2d263a280164a039ef0a02e26ee0501
*  1) In order to use the data, download it from the url above
*  2) Copy the data to your sdcard
*  3) Set the path to the data by replacing <CacheName> with file:///mnt/sdcard/Parcels/v101/Parcel Map
*     on line60 below.
*  
*  You can also use your own data if it is in an ArcGIS Compact Cache format, for more information on 
*  this data format see this link: 
*  http://blogs.esri.com/Dev/blogs/arcgisserver/archive/2010/05/27/Introducing-the-compact-cache-storage-format.aspx
*  
**/

public class LocalTiledLayer extends Activity {

	MapView map = null;
	ArcGISLocalTiledLayer local;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		map = (MapView) findViewById(R.id.map);
		
		//the data is stored on the SDCARD
		//the data is created as a tiled cache
//		local = new ArcGISLocalTiledLayer("file:///mnt/sdcard/ArcGIS/Basemap/Layers");
//		local = new ArcGISLocalTiledLayer(Environment.getExternalStorageDirectory()
//						+ "/YX1.tpk"); // 不行
		local = new ArcGISLocalTiledLayer("file:///storage/sdcard0/YX1.tpk"); // ok
		map.addLayer(local);
	}
}

项目截图:



运行截图


上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:02:49
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/4936/
本文WWW.DOC100.NET DOC100.NET版权所有。