欢迎光临 GIS-Transforming our World
ArcGIS Runtime SDK 移动开发 上海分公司王晓燕
摘要 新一代的 WebGIS ArcGIS Runtime SDKs 的故事 开发环境准备 各平台上即拿即用的 ArcGIS 开发过程 总结与展望
新一代的 Web GIS GIS-Transforming our World
Web GIS 整合所有类型的地理信息 电子表格 社交媒体 服务 影像 Web Map 传感器网络 地图 大数据 ArcGISOnline\ Portal for ArcGIS
ArcGIS Runtime SDKs GIS-Transforming our World 的故事
ArcGIS Runtime 家族 移动端相关 : ArcGIS Runtime SDK for ios / Android/ Windows Phone/ Windows Mobile/ Windows Store app / JavaSE/ WPF
ArcGIS Runtime 的运行环境 OS X Desktop Phones & tablets Windows Store App WPF ios Windows Mobile QT Android Windows Phone JavaSE http://resources.arcgis.com/en/communities/smartphone-apps/
本地功能网络功能ArcGIS Runtime Architcture Local Server Geocoding GeoProcessing Mapping Editing WPF Java Tile Package GPS Runtime Core Messaging OpenGL Server Sync Advanced Symbology DirectX Offline Routing ios Windows Store app Android Spatial Analysis Offline Geocoding Remote Server Geocoding GeoProcessing Mapping Editing Windows Phone
移动开发产品的发展历程 ios (2009.12 月首发 ) beta 1.0 1.8 2.0 2.1 2.2 2.3 10.1.1 Android(2011.12 月首发 ) beta 1.0 1.1 2.0 10.1.1 Windows Phone(2010.8 月首发 beta) beta 1.0 2.4 3.0 10.1.1 Windows Store App(2013.3 月首发 beta) 10.2 beta
开发环境准备 GIS-Transforming our World
ios SDK 开发环境 OSX 10.7 or 10.8 Xcode ios SDK 5.0 以上 加入 Apple s ios Developer 计划 - Standard : AppStore distribution - Enterprise : In-House distribution ArcGIS Runtime for ios v10.1.1 Update 1
Android 开发环境 Eclipse 3.6.2 (Helios) 或更高 - Eclipse's Java development tools (JDT) - Android Development Tools (ADT) plug-in 最新版本 JDK 6 Android API 2.2,2.3 4.X ArcGIS Runtime SDK for Android
Windows Phone 开发环境 Windows 7 - Windows Phone SDK 7.1 - Visual Studio 2010 - Expression Blend 4 Windows 8 - Windows Phone SDK 8.0 - Visual Studio 2012 - Blend for Visual Studio 2012 ArcGIS Runtime SDK for Windows Phone
Windows Store App 开发环境 运行环境 Window 8 & RT 开发环境 Windows 8,VS2012 微软 Windows Store 应用商店账户 ArcGIS Runtime SDK 10.2 Beta for Windows Store apps
各平台上即拿即用的 ArcGIS GIS-Transforming our World
Collector for ArcGIS (ios Android) 简介 专为数据采集而设计 为嵌入了 GPS 模块的智能手机而设计 采集属性信息 空间信息 图片 采集的数据可通过 Operation Dashboard 实时展示 功能 搜索和使用 ArcGIS Online 上的 WebMap 采集图片 视频 属性 位置等数据 编辑 webmap 地图切换 测量 路径规划
Operations Dashboard for ArcGIS(Windows 8) 简介 为事件监控提供了一个统一的操作页面 集成地图和多种类型的数据源来创建复杂的业务视图 业务视图中可以使用图标 列表 仪表 指示器等多种丰富的效果 视图会随着数据的变化实时更新 视图可存储在 Online 上并与组织分享 可使用多个显示器或者单个移动设备来进行监控 多显示器时用户之间可通过文本 地图标示等方式进行协作
ArcGIS Preview ( Windows Store app ) 简介 为 ArcGIS Online 用户提供在 Windows 8 和 Windows RT 上的地图平台 功能 组织中地图的搜索与展示 地图内容列表及图层控制 支持手指的地图操作 专题图要素信息展示 支持图例 地理编码 书签 量算 地图打印
6 个词概括 ArcGIS Runtime 移动 SDK 多平台 Mutiple 轻 Light weight 量级 fast 快速 强大 Powerful 原生 Native 开发简单 easy
ArcGIS 移动开发的过程 (ios 为例 ) GIS-Transforming our World
移动 SDK 的四大功能
ArcGIS Runtime SDK for ios 主要内容 Service & Map - 各类底图 - 数据服务 - Web Map Graphics - 在地图上动态绘制 Graphic Tools - 创建标注 Tasks - 搜索, 空间查询, 查找 GIS 要素 - 对地址进行定位, 地理编码 - Geometry 操作 ( 支持本地 ) - Geoprocessing Task Editing Tools - Sketch layer - 属性页 Popup Task Portal Map
Map
地图组件 AGSMapView UI 组件 - 响应手势操作 - 显示 GPS 位置 - 触发 Callout 地图服务融合 (mushup) - 叠加 ArcGIS Server 发布的服务 - 叠加 Bing map OpenStreetMap - 原生支持 WMS 图层 - 离线数据包 tpk - 自定义图层 GraphicLayer - 手绘图层 SketchLayer 打开 ArcGIS.com 上的 Web Map SketchLayer Geometry Symbol Attributes Graphic GraphicLayer Layer Layer AGSMapView
地图组件的 Protocal 通过委托的方式实现 MapView Layer Delegate - Map Load,faild to load MapView Touch Delegate - Tap, Tap and hold - Move and hold MapView Callout Delegate - Did Show Callout, Should Show Callout,Should dismiss Layer Delegate - Layer Load, faild to load Callout Delegate - Did Click Accessory Button
响应地图 touch 事件 1 声明 AGSMapViewTouchDelegate 协议 2 实现 AGSMapViewTouchDelegate 协议的方法 3 设置委托 (Delegate)
符号与渲染 图形 (Graphics) 几何 (Geometry) 属性 (Attribute): 新的架构下, 属性的接口有全新的变化 符合 (Symbol) Geometry Symbol 符号 (Symbol) Picture,Marker,Line,Fill, Composite Text Military Symbol Attributes 渲染 (Render) 简单 (Simple) 唯一值 (Unique Value), 分类 (class break) 时态 (Temporal) Graphic (Feature)
请求与处理
Task Query,Find,Identify Task 在地图中查找要素 GeoProcessing Task 地理分析服务, 通过 GPTool 或 Model 来实现 Locator 地址编码和逆地址编码 GeometryService Task 投影, 缓冲区分析 距离计算, 面积计算等等 Geometry Engine 在客户端实现的几何操作引擎 Rout Task 点对点以及多点间路径分析服务区域查询支持路障 时间窗口以及最佳顺序
Task 执行的一般流程 1 声明 Task 相关协议 2 实现协议方法
Task 执行的一般流程 3 初始化 Task 4 设置委托 5 执行 Task
Portal 的对接
Portal 的相关类 AGSPortal 连接 登陆 搜索查询组 用户 资源 ( 空间数据 服务 文档 符号集 应用程序等 ) AGSWebMap 获得 web map 的访问连接 查询 web map 的资源组成 AGSCredential AGSCredentialCache 支持以多种方式保证服务与资源的安全
Web 一张图 Demo
总结与展望 GIS-Transforming our World
总结 ios 对 ArcGIS Server 的功能封装的最全面 有很多方便的工具类 示例丰富 扩展容易 系统相对封闭, 但上手有一定难度 Android 功能不够全面 扩展不易 但是上手比较容易 实体机硬件环境不统一, 后续维护工作量较大 Windows Phone 本地化功能较弱, 但代码移植容易 上手快 但是实体机群体尚小, 发展比较缓慢 Windows Store apps 开发方法多样 代码移植容易 随着微软推广政策的不断加强和硬件设备的增加, 使用者和开发者会更多
移动 Runtime SDKs 的 10.2 新功能 数据 支持更多 OGC 服务 :WMS WMTS 支持 SQLite 空间数据类型 :ST-Geometry Spatialite 功能 支持离线数据的增删改查 支持离线分析 : 地址匹配 路径规划 支持移动端创建 编辑 webmap 支持 Geotriggers 服务 性能 动态的 Graphic Layer, 提升数据前端呈现的效率
帮助信息 ArcGIS Runtime SDKs for ios 帮助信息 https://developers.arcgis.com/en/ios/ ArcGIS Runtime SDKs for Android 帮助信息 https://developers.arcgis.com/en/android/ ArcGIS Runtime SDKs for Windows Phone 帮助信息 http://resources.arcgis.com/en/communities/windows-phone-sdk ArcGIS Runtime SDKs for Windows Store app 帮助信息 https://developers.arcgis.com/en/windows-store/
纵览趋势分享成功