5.3. 解决方案和产品

发布日期 : 2025-10-12 13:01:52 UTC      

访问量: 640 次浏览

移动GIS开发有多种方法(表5. 1 ), 包括基于本地应用程序的方法、基于浏览器的方法和基于短消息的方法(KaPoor,2008)。 本节将讨论这些方法的优点和局限,并介绍如何根据应用项目的目的、要求和针对的用户群来选择合适的方法。

表5.1对比不同的移动GIS开发方法

image62

5.3.1. 本地应用程序方式 #

本地应用程序是指那些安装和运行于移动设备中的软件程序。 这是一种重要的移动GIS应用开发方式。 其优势包括

  • 友好的用户体验:本地应用能够与操作系统紧密、完美地结合, 能充分利用移动操作系统所提供的独特或丰富的用户界面,实现最友好的用户交互。

  • 能够直接使用附属设备:如可以直接读取GPS接收器,从而能对GPS测到的坐标做差分计算等。 该特点对于很多应用非常关键,如测绘、导航和一 些专业应用等。

  • 能够使用本地文件和数据:一些项目需要在没有网络的情况下能继续工作, 因此需要将数据存储于设备上。

本地应用程序的缺点是开发的投入较大、跨平台性较差、编程语言依赖于操作系统、为一个操作系统开发的应用往往不能在别的操作系统上运行。 例如, 在iOS平台上要使用Objective C(图5. 5)、在Android平台上要使用Java或C、在Windows Phone平台上使用Silverlight(运行于浏览器之外)、在WindowsMobile平台上用.NET Mobile。 目前,也出现了 一些“通用”的方法, 例如,Adobe公司的Flash Builder集成开发环境可以把同一个程序编译成iOS版和Android版(图5.5 ), 这种方法虽然不能充分利用每一种移动平台的特点或独特接口,但提供了移动GIS跨平台开发的一种便捷方法。

(A) Adobe公司的FlashBuilder集成开发环境,可以把同一个Flex程序编译成iOS版、 Android版和黑莓版,提供了一种跨移动平台的开发方法; (B)苹果公司推荐的开发iOS应用的方法是采用苹果公司的计算机(如MadBookAir)、 XCode集成开发环境和Objective C语言

Fig. 5.4 (A) Adobe公司的FlashBuilder集成开发环境,可以把同一个Flex程序编译成iOS版、 Android版和黑莓版,提供了一种跨移动平台的开发方法; (B)苹果公司推荐的开发iOS应用的方法是采用苹果公司的计算机(如MadBookAir)、 XCode集成开发环境和Objective C语言 #

本地应用程序的例子很多,例如, 在苹果公司的应用商店(App Store)、谷歌公司的Android Market以及微软公司的Windows Phone Marketplace里有大量的本地应用软件可以免费下载或购买。 面向个人用户的应用如车载导航系统、谷歌地图(移动版)和Foursquare移动版等。 面向企业用户的应用如Esri的Arc-GIS智能手机和平板电脑版(包括ArcGIS for iOS、Android和Windows Phone)、ArcGIS Mobile 和 ArcPad 等。

ArcGIS智能手机和平板电脑版可以安装在运行iOS操作系统的iPhone、iPad和iPodTouch上(图5. 6),以及运行Android或Windows Phone操作系统的多类移动平台上。 对每一种操作系统,ArcGIS既提供了一个可以直接使用的移动GIS应用, 又提供了一个软件开发工具包(SDK),前者可以在苹果、谷歌、微软的移动应用商店里免费下载和安装, 后者便于程序员进行二次开发。 它的主要角色是作为ArcGIS Server和ArcGIS Online(ArcGIS. com)的客户端, 能实现的功能包括查询和使用ArcGIS Online中的地图服务和地图应用,显示动态或瓦块地图服务, 组合多个地图服务,采集地理和属性数据, 执行地图查询、地名地址查找以及调用ArcGIS Server所支持的分析任务。

ArcGIS Mobile是一个以任务为向导的移动应用程序,它需要运行于Win¬dowsMobile 操作系统的移动设备或 Windows 操作系统的便携电脑(图 5. 7) 。

ArcGIS for iPhone 和 iPad 版(A) ,Android 版(B) ,Windows Phone版(C) (致谢:美国农业部和美国人口普查局)

Fig. 5.5 ArcGIS for iPhone 和 iPad 版(A) ,Android 版(B) ,Windows Phone版(C) (致谢:美国农业部和美国人口普查局) #

ArcGISMobile将GIS服务器的计算能力和数据提供给多种移动设备, 可以被用于(A)定位同事或设备;(B)通过一个以任务为导向的用户界面来执行分配到的任务; (C)编辑属性数据和添加照片;(D)使用其平板电脑版的夜景界面。 (致谢:ANDAutomotive Navigation Data,Tele Atlas NorthAmerica,Inc.,GeoEye,i-Cubed 和 Trimble)

Fig. 5.6 ArcGISMobile将GIS服务器的计算能力和数据提供给多种移动设备, 可以被用于(A)定位同事或设备;(B)通过一个以任务为导向的用户界面来执行分配到的任务; (C)编辑属性数据和添加照片;(D)使用其平板电脑版的夜景界面。 (致谢:ANDAutomotive Navigation Data,Tele Atlas NorthAmerica,Inc.,GeoEye,i-Cubed 和 Trimble) #

它提供了一个可以灵活配置的应用程序,也提供了一套软件开发工具(SDK)。 它的主要角色也是作为ArcGIS Server的客户端,并可以把地理数据和地图加载到移动设备上, 具有一定的脱机运行的能力。 它的功能包括:

  • 在野外进行地图浏览、导航及设备和资产调查;

  • 收集和编辑GIS数据,并能随时把采集到的数据同步到GIS服务器中;

  • 查询和管理派工单;

  • 无需编程就能快速部署和应用。

相对于前两者, ArcPad适用于空间精度要求更高的野外GIS应用,特别是野外测量、地下管线维修等(图5. 8)。 它提供室外地理信息采集、编辑和显示能力。 它采集的数据既可以在回到办公室后通过ArcGIS桌面软件汇交到服务器的主数据库中, 也可以通过无线通信随时通过ArcGIS Server实现数据的汇交。

GeoCollector是一个整合了 ArcPad和Trimble的专业版手持GPS终端设备, 可以实现1英尺的室外测绘精度。 (致谢:Tele Atlas North America,Inc.和 Trimble)

Fig. 5.7 GeoCollector是一个整合了 ArcPad和Trimble的专业版手持GPS终端设备, 可以实现1英尺的室外测绘精度。 (致谢:Tele Atlas North America,Inc.和 Trimble) #

5.3.2. 基于Web浏览器的开发方式 #

移动设备上的Web浏览器也被称为“移动浏览器”或“微浏览器”。 移动GIS可以在HTML JavaScript和浏览器插件的基础上来实现。

  1. 无线应用协议(Wireless Application Protocol, WAP)

WAP是一个国际规范,其主要意图是使那些低端手机能够浏览网页,因此其功能有限制。 WAP 1.0制定了 WML( Wireless Markup Language)语言,以此来编写WAP网页。 由于与广泛使用的HTML不兼容,使得WML受到了广泛的批 评。 WAP2. 0 对此做了改进,制定了 XHTML-MP( extensible HTML mobile pro¬file, 是HTML 的子集 ),推荐以此作为开发 WAP 网页的语言。 WAP 网页能够在高端和低端移动设备上显示,所以能够覆盖较大的用户群。 但WAP网页的用户界面往往比较简陋,难以开发出友好和丰富的GIS功能。

  1. 完整版本的HTML

随着移动平台的发展, 苹果公司的iPhone、谷歌公司的Android和WindowsPhone等的Web浏览器已经接近台式计算机浏览器的功能, 它们能支持完整的HTML、CSS、JaVaScriPt以及AJAX, 开发者可以采用这些常用和熟知的开发语言,而不必学习相对生僻的WAP或难度相对较大的本地开发方法。 或可以对已有的HTMiyjavaScript的WebGIS应用程序进行修改(主要是修改界面以适应移动设备的小屏幕, 而服务器端的应用逻辑层往往无需做大的更改), 就可以既支持桌面Web浏览器,又支持多种操作系统的手机客户端,实现较好的跨平台性(图5. 9)。 通过一些程序包,如Esri提供的针对iOS等平台的JavaScript程

在ArcGIS API forJavaScript的资源中心,有很多针对iOS平台上移动GIS的例子 (A) ; ArcGISOnline (ArcGIS. com)的地图浏览是基于HTML和JavaScript的, 可以运行于智能手机和平板电脑上,如iPad上(B); 在Android上运行一个基于ArcGIS API forJavaScript的手机地图(C)。(致谢:美国人口普查局)

Fig. 5.8 在ArcGIS API forJavaScript的资源中心,有很多针对iOS平台上移动GIS的例子 (A) ; ArcGISOnline (ArcGIS. com)的地图浏览是基于HTML和JavaScript的, 可以运行于智能手机和平板电脑上,如iPad上(B); 在Android上运行一个基于ArcGIS API forJavaScript的手机地图(C)。(致谢:美国人口普查局) #

序包,也能够实现与本地开发方法接近的用户界面,获得较好的用户体验。

  1. 移动浏览器插件

在台式计算机平台上, Web浏览器插件如Flash和Silverlight是常用的具有很高表现力的WebGIS开发技术。 但目前,移动平台对插件的支持还不够多、不统一。 苹果公司前总裁Steve Jobs(2〇10)曾撰文指出, Flash插件在iOS移动平台上占用较多的CPU资源、耗电等缺点,拒绝在iOS上支持Flash。 Adobe公司也声明要停止移动浏览器中Hash插件的开发,而专注于发展Flash和Air在移动平台作为本地应用开发的方式和Flash在桌面浏览器中的发展(Winokur,2011),使得这种基于移动浏览器插件的方法前途不够明朗。

5.3.3. 基于短信的方式 #

短信是高低端手机都支持的一种服务,利用短信方法来开发WebGIS应用, 可以把地理信息送到最大的用户群手中。 例如,雅虎公司和谷歌公司都曾允许用户通过短信查询和收取某地附近的商业列表、天气和导航信息等。 这种方法的缺点是用户体验较差,内容一般限于文字,不直观。

短信方式也可以与其他方式相结合使用。 例如,一些站点允许用户用台式机算机查询地点和行车路线,结果则通过短信方式发送到手机上。 另外, Esri Situational Awareness Bundle和美国洛玛琳达大学医疗中心尚级应急GIS应用

基于区域的短信群发技术可以向屏幕上选定区域内的野外人员进行短信群发。 (致谢:Tele Atlas North America,Inc.)

Fig. 5.9 基于区域的短信群发技术可以向屏幕上选定区域内的野外人员进行短信群发。 (致谢:Tele Atlas North America,Inc.) #

能够提供基于区域的短信群发功能。 通过该应用,野外人员能够报告自己的位置, 而指挥中心也可以向位于某一个区域内的所有人员发送短信(图5. 10)。 该方法在紧急情况下,特别在难以获取野外人员通讯号码的情况下,具有特别的价值。

《地理信息系统原理、技术与方法》  97

最近几年来,地理信息系统无论是在理论上还是应用上都处在一个飞速发展的阶段。 GIS被应用于多个领域的建模和决策支持,如城市管理、区划、环境整治等等,地理信息成为信息时代重要的组成部分之一; “数字地球”概念的提出,更进一步推动了作为其技术支撑的GIS的发展。 与此同时,一些学者致力于相关的理论研究,如空间感知、空间数据误差、空间关系的形式化等等。 这恰好说明了地理信息系统作为应用技术和学科的两个方面,并且这两个方面构成了相互促进的发展过程。