APP下载

基于.NET的地球物理信息服务平台与Andorid应用开发

2017-11-17◆袁

网络安全技术与应用 2017年11期
关键词:服务平台数据库微信

◆袁 宏 梁 虹

(1.四川省核工业地质调查院 四川 610061;2.中国地质调查局成都地质调查中心 四川 610081)

基于.NET的地球物理信息服务平台与Andorid应用开发

◆袁 宏1梁 虹2

(1.四川省核工业地质调查院 四川 610061;2.中国地质调查局成都地质调查中心 四川 610081)

在网络技术日新月异的发展下,移动终端凭借其“实时实地”获取信息的能力,成为我们了解信息的重要渠道。在传统PC终端基础上,移动端上的用户体验已成为Web信息系统的一个重要关注点。本文采用ASP.NET后端技术、JSON数据交换格式,设计与实现了一个地球物理行业信息共享与综合服务平台,以服务于行业发展和社会经济发展。

.NET;Android;JSON;服务平台

0 引言

当今,互联网已经成为一种普遍的生活方式。互联网可以比任何一种方式都更快、更经济、更直观、更有效地把一个思想或信息传播开来。[1]同时,随着宽带无线接入技术和移动终端技术的飞速发展,互联网逐渐和移动通信结合形成移动互联网。如今,移动APP(移动应用服务)“实时实地”获取各种信息的能力,使得它已经成为我们了解信息的重要渠道,如微博、微信、电子地图等。

1 整体设计

如今,在传统的PC终端基础上,移动端上的用户体验已成为 Web信息系统的一个重要关注点。手机已不再仅仅是一种通信工具,而已发展成为集通信、生活服务、休闲娱乐、办公等多种功能的移动手持终端。[2]同时,不同种类的移动终端应用(APP)也蓬勃兴起和快速发展。微博作为一种流行的结合无线网络和有线网络,分享并获取信息的即时通讯服务,也从PC发展到手机端,带给用户更便捷的信息传播和交流方式。此外,微信借助互联网和移动客户端的快速发展,迅速发展成为当下人们日常沟通与分享信息的主要通讯方式。[3]微信已成为一种全新的信息传播方式正在改变着人们的社交方式和生活方式[4]。

地球物理学是地球科学的主要学科之一,地球物理勘探是一种重要的勘查方法技术,在油气勘探、矿产地质勘探、工程勘探、环境勘探、工业管线勘探、考古勘探中应用广泛。但由于行业联合不足,没有形成较好的市场机制,不能较好适应市场经济的发展变化,许多积累的资源未能得到充分利用。为此,利用互联网建立一个资源共享、信息互通的服务平台有着重要的意义。

地球物理行业信息服务平台构建采用PC端与移动端结合的方式,构建了针对普通PC端的网站,构建了针对移动端的APP,搭建了针对PC和移动端的微博、微信。

平台整体架构如图1所示。

平台整体架构从下至上按照5层设计:数据层按照规范化的格式搭建一个统一数据库,提供平台运行的基础数据中心;平台层依托高性能服务器24小时提供信息浏览、知识交流、成果转化、公益互动的功能与服务;应用层采用线上网络信息服务与线下人工服务配合的方式,为行业单位、从业人员和社会公众提供具有针对性的信息服务、知识服务、宣传服务和公益服务等社会化服务;网络层依托互联网、移动互联网实现用户只要能联网即可访问与使用本平台;展示层可在多种终端设备上进行平台接入,如电脑、智能手机、智能电视和触摸设备等。

图1 平台架构

2 关键问题

本平台是一个网络信息服务平台,主要的开发技术包括动态网站建站技术、数据库技术、Android开发技术等。目前,国内外动态网站的开发语言主要有:ASP、JSP、PHP、ASP.NET。其中ASP.NET是一个编译的、基于.NET的环境,有着自己特殊的优势:管理性强、更好的安全保护、底层类多、开发速度快、易于部署等。本平台针对PC端的Web应用开发即选择ASP.NET进行建站,相应的数据库采用了SQL Server,开发环境为Visual Studio 2013。ASP.NET的建站技术相对成熟,结合HTML、CSS、JavaScript等即可实现。在已有ASP.NET网站基础上,平台移动端开发是一个关键问题。

2.1 Android的开发模式

Android的开发模式一般有原生态开发、web应用开发和混合模式开发三种。他们同时具备自己的有点,同时也有自身的缺点。

(1)原生态开发即使用移动平台(如 Android、iOS)支持的开发工具和语言进行开发。比较而言,原生应用程序的外观和性能是最佳的,但其开发成本高、版本更新不方便,获得新版本时需重新下载应用更新。

(2)Web应用开发本质上是为移动浏览器设计的基于Web的应用开发,现在常用的开发技术是HTML5、JavaScript和CSS。它可实现只编写一次即可在多个跨平台设备上运行,同时仍存在一些局限性,如会话管理、安全离线存储以及访问原生设备功能等。

(3)混合应用即原生应用和Web应用的结合体,它综合了Web应用开发的开发速度和Native应用开发的高性能体验,可兼容多平台,但是性能稍慢。它主要使用H5和JS构建而成,然后封装在细薄的原生容器里面,可通过容器来访问原生平台功能。

综合研究时间、成本、维护性和扩展性要求,在已有 Web网站基础上,平台移动端选择Hybrid App开发模式完成平台APP开发工作。

2.2 Android连接SQL Server数据库

在移动端,相关数据显示目前世界上使用最多的操作系统为Android,作为移动端的操作系统,其处理能力远远比不上PC端的处理能力。平台Web网站采用SQL Server数据库,而SQL Server安装后将占用上GB的存储空间,运行内存占用也高达上100M,若想在Android端直接连接SQL Server数据库,对于移动端来说开销是巨大的。而且,Android采用JAVA语言,若直接连接SQL Server要先加载SQLJDBC驱动,目前只有PC版的驱动包。由此通过一个中间“桥梁”访问SQL Server数据库是当前的主要方法。中间“桥梁”即运行在服务器端的服务程序,它的主要作用是连接与访问SQL Server数据库,实现客户端的各种操作请求并返回操作结果。复杂的数据库操作都由服务器端完成,客户端只进行较为简单的数据交互,大大减轻了客户端的负担。

2.3 Android服务端实现

平台技术方案如图2所示。

图2 平台技术方案

针对ASP.NET应用程序,服务端的实现可采用Web service,也可采用Web site。Web site即通常说的网站。Web service是一个平台独立的、低耦合的、基于可编程的web的应用程序,它向外界暴露出一个能够通过Web进行调用的API。比较而言:Web service只是提供一种服务,它使用开放的XML标准来描述、发布、协调和配置这些服务;Web site可提供用户界面等具体的页面,使用W3C标准来描述、发布页面内容。

值得一提的是,ASP.NET页面以ASPX扩展名存储。页面由文本、标记以及ASP.NET特定服务器标记和脚本组成。与ASPX不同,ASP.NET中另外一种格式ASHX(一般事务处理程序页)主要用来写Web handler,它只简单的对Web请求直接返回结果,比ASPX少处理了HTML过程,比ASPX响应快,特别适合于生成动态图片、动态文本(纯文本、JSON、XML、JavaScript等)[5]。

这里的JSON,英文全称JavaScript Object Notation,是一种轻量级数据交换格式,在跨平台数据传输中非常有优势[6]。JSON采用完全独立于语言的文本格式,使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JS、Python等)。这些特性使JSON成为理想的数据交换语言。它比XML更小、更快、更易解析,易于人阅读和编写,同时也易于机器解析和生成[7]。

由此,本文采用ASHX+JSON实现Android移动端的数据库连接与访问操作。一方面,ASHX与ASPX的编码方式一致,上手容易,能与已开发的Web网站快速部署,另一方面,ASHX相对Web service比较轻量级,经测试处理效率更高,而Web service需要遵守一些 SOA标准协议反而在处理简单文本数据时效率更低。

综上,整个平台基于一个统一的 SQL Server数据库,采用ASP.NET为PC端和移动端提供统一的管理窗口。ASP.NET通过WEB窗体(ASPX)提供客户端浏览器访问服务;通过一般处理程序(ASHX)为移动端(APP)提供数据交互(JSON);通过ADO.NET与数据库进行交互。微博、微信为第三方提供的功能,由管理员统一管理。

3 平台界面与实现

平台采用ASP.NET与Android Studio环境,C#、JAVA开发语言,实现了一个网站、APP与第三方微博、微信紧密结合的网络信息服务系统,主要实现了追踪行业新闻动态、共享行业资源、交流行业热点、学习优秀项目案例、科普行业知识等功能。

图3 平台网站

图4 APP首页

图5 APP资源页面

4 结语

本文基于移动互联思想,研究实现了一套地球物理行业服务平台,用户可以通过电脑、手机等多种终端访问与使用平台功能。平台将地球物理行业的单位机构、人才、设备、项目成果等资源整合起来,实现资源共享、提高设备利用率、促进交流等目的。

[1] 方富贵.浅析中国互联网的现状及发展趋势[J].甘肃联合大学学报(自然科学版),2012.

[2] 丁钊.移动互联网时代广播媒体面临的机遇与挑战[J].中国广播,2014.

[3] 唐睿.移动互联网背景下微信的传播优势分析[J].新闻传播,2014.

[4] 申丹丹.移动互联网背景下微信的传播优势分析[J].青春岁月,2013.

[5] Jeff Wong. aspx,ascx 和 ashx 使用小结[EB/OL].http://www.cnblogs.com/jeffwongishandsome/archive/2009/07/07/1517628.html.

[6] 郭武士.JSON在Web开发中的应用[J].四川工程职业技术学院学报,2007.

[7] 百度百科.JSON[EB/OL].http://baike.baidu.com/link?url=cZyQmr234mrTYLRxonlSJlCvrXM c1hjmFqLjC3UIFElFWOWdKEf5VXI1ySaqQL9wISRatgcj0KC3S0 lWLB7Fsa.

基金:四川省科技厅基础条件平台项目(2016GZ0012)。

猜你喜欢

服务平台数据库微信
打造一体化汽车服务平台
江苏省一体化在线交通运输政务服务平台构建
论基于云的电子政务服务平台构建
基于云计算的民航公共信息服务平台
微信
数据库
数据库
数据库
数据库
微信