ArcGIS Mobile 10 开发(一)
来源:互联网 发布:欣赏不了交响曲知乎 编辑:程序博客网 时间:2024/04/29 11:41
ArcGISMobile 10第一个移动程序
之前为大家介绍了ArcGIS Mobile 10在安装程序和控件方面的新增和改进的部分,下面开始着手建立第一个移动应用程序的开发和部署。就像所有的程序开发一下,第一个程序就叫Hello World,下面就是基本的实现步骤
1、首先启动Visual Studio .NET 2008,并新建一个工程选择“智能设备”项目,然后在目标平台中选择Windows Mobile 5.0 Pocket PC SDK ,在.NetCompact Framework Version中选择2.0。
2、直接拖拽ArcGIS Mobile Controls中的Map控件到窗体上,这时你会发现窗体的控件栏上多了一个MobileCache1。不在是以前9.3时的MobileService控件。我们还需要对Map控件的DataSources属性设置为MobileCache1,这样就将数据源绑定到了Map控件中。然后将Map1控件的Dock属性设置为Fill,这样地图控件就充满全屏。对于屏幕本来就小的移动设备,这样更能让我看的比较舒服。
3、 上面将Map控件和MapCache进行绑定还不能让我们直接显示地图,还需要写几句代码来设定Map的数据源在移动设备上的具体物理位置。如下:
首先引用命名空间
using ESRI.ArcGIS.Mobile;
usingESRI.ArcGIS.Mobile.MobileServices;
……………
privatevoid Form1_Load(object sender, EventArgs e)
{
// 指定地图缓存存放的位置
mobileCache1.StoragePath=Environment.GetFolderPath(Environment.SpecialFolder.Personal)+ @”MapCache”;
if (!mobileCache1.IsValid)
{
MessageBox.Show(“Map Cache is not valid!”);
return;
}
if (mobileCache1.IsEmpty)
{
try
{
// 如果指定位置没有地图缓存的话,从ArcGIS Server发布的Mobile Services上下载地图缓存,其中需要使用到mobileServiceConnection控件
mobileServiceConnection1.Url=@http://YourServer/YourArcGISServerInstance/services/YourMobileServiceName/MapServer/MobileServer;
mobileCache1.DeleteCache();
MobileCacheSyncAgent mobilesync=newMobileCacheSyncAgent(mobileCache1,mobileServiceConnection1);
mobileServiceConnection1.CreateCache(mobileCache1);
mobilesync.Synchronize();
}
catch
{
MessageBox.Show(“Cannot synchronize with this service”);
}
}
try
{
mobileCache1.Open();
}
catch
{
MessageBox.Show(“Cannot open map cache”);
}
}
4、 接下来就是配置我们程序的运行环境了,你可以直接连一个真实的移动设备(操作系统要求是windows Mobile 5)也可以部署到虚拟机里面。这里我先部署到虚拟机里面,程序调试一般也都在虚拟机里来完成。在VS2008工具栏中-“工具”-“设备仿真器管理器”
5、 这个时候还需要往虚拟机里部署我们地图缓存,安装ArcGIS Mobile Runtime等操作,所以首先需要连接连通虚拟机,你可以通过Sync4.5或者Windows Mobile设备中心来连接虚拟机
连接之后首先要将ArcGIS Mobile Runtime进行部署安装,ArcGIS安装路径Mobile10.0InstallAGMRuntime.CAB。该文件是ArcGIS Mobile在移动设备上的运行时,如果不安装该文件在程序运行时就会报MissingArcGIS registry key的错误。
接着就部署地图缓存了,根据上面代码中编写的一样我们在移动设备的MyDocumentMapCache位置方式我们的地图缓存。ArcGIS Mobile 10中地图缓存和9.3中也不一样了,更简洁了些
最后看一下运行结果
- ArcGIS Mobile 10 开发(一)
- ArcGIS mobile 开发笔记(一)
- ArcGIS Mobile 10 开发(二)Mobile Project Center
- ArcGIS Mobile 10开发(三)–网络分析
- ArcGIS Mobile 10开发(四)加载切片数据
- arcgis mobile 开发文档
- ArcGIS Mobile 10
- ArcGIS Mobile 10简介
- ArcGIS Mobile 9.4学习笔记一
- ArcGIS Mobile 10系统要求
- arcgis Mobile 开发资源网站与博客
- ArcGIS 9.3 Mobile 开发的常见问题
- 基于ArcGIS Flex API开发Mobile应用
- Windows Mobile 开发常见问题集(一)
- Windows mobile开发FAQ(一)
- ArcGIS Mobile 9.3 开发的Missing ArcGIS registry key错误
- ArcGIS Server开发模式摸索(一)
- Arcgis for iOS开发笔记(一)
- 程序员的十楼层,看看自己在第几层
- opencv2学习笔记2-操作图像(椒盐噪声)
- Linux下配置安装PHP环境
- 闲暇时,写的一个简单桌面日程工具
- CCLabelTTF的setString在真机上崩溃的问题(2.1.4)
- ArcGIS Mobile 10 开发(一)
- Spring集成Quartz定时任务框架介绍和Cron表达式详解
- 多窗格播放器在chrome,和firefox下的开发
- Big Barn
- cocos2d-x绑lua的开发环境
- Protel网络表常见错误及实用技巧
- 原型链根 Object.prototype
- Spring配置Quartz例子
- 分割内电层