ArcGIS Runtime SDK是一整套用于构建原生及跨平台的地图应用程序的开发包,包括移动设备的Android、iOS、Windows Phone,针对桌面的.Net、Java、OSX,以及跨平台的QT。这全部的API基于一个共同的C++内核,并在不一样平台上作了对应的封装,使得在多平台下的接口风格和编程模型相一致。当咱们在一个平台上学会了对应sdk的开发流程,在其余平台上若是咱们对该平台比较熟也能够很快的将知识结构平移过去,快速的适应新平台的开发工做。html
相信大部分开发者对ArcGIS Runtime SDKs这个名称并不生疏,它实际上包含了一系列SDKs,用来开发应用于桌面和移动设备的应用程序。在10.2.2以前的版本中,ArcGIS Runtime SDKs包括ArcGIS Runtime SDK for Android、iOS、Windows Phone、Windows Mobile、JavaSE、QT、OS X、Windows Store及WPF共9种。android
2014年3月10号,正式发布了Runtime SDK的部分10.2.2版本,咱们也初步窥见了10.2.2 Runtime SDK的新成员。在10.2.2的版本中,Esri对Runtime SDKs进行了从新整合,合并或从新设计了一些SDK。数据库
从下表中能够看出,Esri是计划将原来的Runtime SDK for Windows Phone、Windows Store以及WPF这3大SDK整合成一个,他们都是基于.NET技术,开发应用于Windows平台上的应用,不过可能因为WPF SDK的技术架构有些特别,整合的工做量比较大,所以重写了SDK for .Net,并暂时保留了WPF SDK;而且因为Windows Mobile系统已经很老,Esri在新的Runtime SDKs体系中也并未打算对其进行继续升级。编程
所以,10.2.2版本中,正式向用户推荐的SDKs主要有Android、iOS、.Net、Qt、OS X和Java这6种,主要是在Windows平台上的开发包有较大改动,进行了大量的整合,我想这对.Net开发者们来讲真是一个极好的消息。新的Runtime SDKs包括:缓存
10.2.2以前的Runtime SDKs服务器 |
10.2.2版本的Runtime SDKs网络 |
面向的操做系统架构 |
ArcGIS Runtime SDK for Androidapp |
ArcGIS Runtime SDK for Android框架 |
Android |
ArcGIS Runtime SDK for iOS |
ArcGIS Runtime SDK for iOS |
iOS |
ArcGIS Runtime SDK for Windows Phone |
ArcGIS Runtime SDK for .Net |
Windows Desktop(for WPF开发者) Windows Store(Windows 8.1) Windows Phone 8 |
ArcGIS Runtime SDK for Windows Store |
||
ArcGIS Runtime SDK for WPF |
ArcGIS Runtime SDK for WPF |
Windows Desktop |
ArcGIS Runtime SDK for Windows Mobile |
—— |
—— |
ArcGIS Runtime SDK for QT |
ArcGIS Runtime SDK for Qt |
Windows、Linux(64/32bit) |
ArcGIS Runtime SDK for OS X |
ArcGIS Runtime SDK for OS X |
Mac(Mountain Lion(OS X 10.8)及以上) |
ArcGIS Runtime SDK for JavaSE |
ArcGIS Runtime SDK for Java |
Windows、Linux(64/32bit) |
ArcGIS Runtime SDKs for Smartphones and Tablets是Esri为开发者提供的移动应用开发包的统称,Smartphones and Tablets的意思是“智能手机和平板”,顾名思义就知道包括面向Android、iOS和Windows Phone这三大主流移动操做系统的SDKs。在上个小节中已经提到,之后就没有ArcGIS Runtime SDK for Windows Phone了,统一归到了ArcGIS Runtime SDK for .Net旗下。
在ArcGIS 10.2.2版本以前,用户只要注册了Esri全球帐号,就能够在Esri的官网上免费下载各个Runtime SDKs安装包以及其它资料,并基于此进行免费的应用程序开发和部署;但10.2.2版本以后,Esri的移动产品受权策略发生了一些变化,开始区分开发版、基础版和标准版。针对不一样的需求咱们选择的版本不一样收费策略也将不一样。
ArcGIS Runtime SDK for Android包括一个用于Android Studio的lib-project,用于eclipse等环境的jar函数库,提供了丰富的工具、文档和示例,使用户可以使用Java构建移动应用程序(这些应用程序将运用ArcGIS for Server提供的强大的制图、地理编码、地理处理和自定义功能)并将它们部署到Android系统的智能手机和平板上。
ArcGIS Runtime SDK for Android能够经过ArcGIS for Server REST服务获取数据和服务资源。Esri发布了GeoServices REST Specification,这一标准规定了ArcGIS REST Service各类接口的访问参数及返回数据的结构,ArcGIS Runtime SDK for Android正是基于这一标准封装的。其实,ArcGIS基于REST接口的API,包括ArcGIS Runtime SDK for Android/iOS/Windows Phone,ArcGIS API for Flex/ Silverlight/ JavaScript,以及ArcGIS Runtime SDK for Java/.NET,都是基于这一标准进行封装的。尽管不一样平台、不一样语言的开发包有其本身的特性,但其对应服务端的编程模型是一致的。下图能很好的说明这一点。
除了ArcGIS for Server,ArcGIS Runtime SDK for Android还能够经过Portal API轻松访问ArcGIS Online和Portal for ArcGIS上的资源,即与云创建密切的联系。另外,在10.2的版本中,ArcGIS Android SDK也能使用本地离线的数据,做为应用的重要数据源,这也是10.2的重大更新,被多数用户和开发者所关注,后面教程中也会详细介绍。截止目前写稿为止,ArcGIS Runtime SDK for Android最新版本是10.2.6-u2。有关ArcGIS Runtime SDK for Android 10.2.6-u2的全部资料,包括安装包下载、系统支持、安装环境说明、API接口说明、Sample、在线帮助等,都能从最新的ArcGIS for Developer站点https://developers.arcgis.com/android/查找到。
ArcGIS for Android从产品上来说分为两个部分,一是给开发者准备的ArcGIS Runtime SDK for Android开发包,专用来开发Android设备上的移动GIS应用;另外一个是名为“ArcGIS”的app,它使用ArcGIS Runtime SDK for Android开发包开发,具有经常使用的和典型的GIS功能,拿来即用,并可在Google Play等商店免费下载。
ArcGIS Runtime SDK for Android开发包的发展历程以下:
说明:通常官网仅提供最新的SDK,以及部分版本SDK下载,对于须要使用旧版SDK的朋友能够加群 ArcGIS Runtime SDK 249819194 在群空间下载所需历史版本。
使用ArcGIS Runtime SDK for Android,用户可以开发出功能强大的移动端GIS应用程序并将它们部署到Android系统的智能手机和平板上,主要功能可覆盖: