基于Android的自助游APP的设计与实现

2017-03-24 06:30张思阳黄同成
电脑知识与技术 2017年1期
关键词:移动互联

张思阳+黄同成

摘要:为了满足用户前往某地自助游的需求,为用户能够在当地的衣食住行及生活服务进行导航,以Android手机系统为平台,设计出以邵阳市为例的自助导游系统。该系统实现了邵阳市周边旅游景点的搜索定位,最新消息推送等功能。系统运行界面简洁友好,便于操作,具有很好的推广和应用价值。

关键词:Android;自助游;移动互联

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2017)01-0095-03

Abstract: To satisfy users' demand to travel in Shao Yang by themselves,and to provide the navigation of service information, a tour-navigate program has been designded by the help of google android sdk android. The program features support for search of the scenic spots in shaoyang, the push notifications and more.Besides, it is added the following working performances: good man-machine interface, convenient operation and high running speed, which has wide application prospect and popularization value.

Key words: Android; self-service travel; mobile internet

1 概述

随着移动通讯技术的发展,智能手机已经融入现代生活的方方面面,成为百姓日常工作学习生活的必需品[1]。手机APP已经是用户手机中最受青睐的服务平台,而在现行的手机系统中,Android系统又占据了智能手机操作系统平台的主要市场。由于Android系统本身是一个开放性的系统开发平台,具有开源性的软件特点,而且Android系统为广大用户提供了较好的嵌入式开发能力,使得众多手机APP能够轻易地放置于手机平台[2]。

基于以上情况,开发一套基于Android系统的自助游APP,建立自助服务系统,利用手机实时了解当地的详细情况,精准定向周边,以用户为中心,满足用户个性化的需求,同时充分利用当地的旅游资源和社会资源,为用户更好的体验当地的文化和娱乐提供实质性的帮助。

本系统的开发以Android平台为开发框架。Android是一种基于Linux的自由及开放源代码的操作系统,所有的应用程序都是使用JAVA语言编写的。访问核心应用程序所使用的是API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块[3]。系统界面的设计使用Photoshop CC进行美化处理,采用ApiCloud云数据库作为数据库平台,系统本身还提供丰富的UI组件,设计完成的系统应用具有良好的可扩展性,数据交互性良好,方便二次开发。

2 软件设计框架

2.1 软件需求分析

该应用作为一个自助游活动交流平台,以Android智能手机为终端,目的是让用户通过一个移动设备就可以快捷地查询到当地的旅游资源及人文文化、商圈等,了解文化底蕴,特色食品,景点等。人们不仅可以查看当地旅游景点信息,还可以查看其他用户通过该平台发布的景区旅游体验和评价。其中给用户进行推荐时,主要根据用户的实时圈进行推荐该圈中的当地人的热门景点。但是,由于技术原因或者其他原因,用户的实时位置并不总是能够获取到,或者用户的实时圈,可推荐的item数量太少。这时候,需要采用其他的替代方案,因此在用户地理位置方面进行了数据挖掘工作[4]。例如,用户周末/平时常去商圈,用户的周末/平时常消费商圈,用户的工作地/居住地附近商圈等,用这些用户的商圈信息,可以根据具体情况,丰富推荐的item。

不同时间段的用户需求是不一样的,因此每个时间段的当地人热单应该是变化的。然而划分太细的时间段,数据量往往又太稀疏,因此通过把其他时段的数据根据时间相似度加权统计进来,效果又会有进一步的提高。

计算时段之间的相似度为,则有式(1):

2.2 软件功能设计

根据该软件的需求,该软件主要功能分为前端应用和后台服务两部分。其中,后台服务主要实现对当地旅游信息的采集和推送,为客户端用户提供当地旅游信息数据服务。

该系统功能主要由三部分组成:

1)提供当地旅游景点线路、景点资讯、旅游景点服务三个方面的数据服务。

2)建立云端数据库,内容主要包括文字描述、图像信息以及用户个人信息等,为客户端用户提供景点信息数据服务。

3)搭建服务设施地理数字数据库,调用百度地图API,结合百度地图搜索功能,为客户端提供设施数据服务。

整个系统由主界面对各个模块进行切换,每个模块也能随时退回主界面,以便用户使用其他模块的内容。系统采用扁平化设计模式列举出4个功能模块导航,点击对应模块可以直接跳轉至对应的界面,从而读取该模块相关的信息,获取有价值的消息。

主要模块功能如下:

1)自助游模块:包括当地的简介,周边景点信息,最佳旅游时间等,使用户对当地信息有粗略了解。

2)酒店模块:包括当地酒店房间信息,住宿情况,以及餐饮提供相关服务。

3)交通模块:包含公交信息查询、自驾、城际、的士等相关功能。

4)景点模块:对当地的多处景点进行相关图文说明,提供景点旅游路线,以及旅游时间的安排,使用户可以轻松获取相关景点的详细信息。

旅客通过手机应用来获取当地衣食住行信息,当地旅游景点、旅游路线等旅游信息,进行自助旅游安排和规划。在旅游的过程中,可以开启自助导航,利用手机定位系统结合百度地图API,游客可以获取周边相关景点的具体信息,同时系统通过移动互联网与后台服务交互,实时更新各种系统信息。

3 软件设计与实现

3.1 主界面实现

主界面列举出所有模块信息,便于客户快速找到相应功能模块。系统的主界面如图1所示。

主界面页分为三个部分。顶部由一个工具栏、一个搜索栏以及快捷电话组成,在顶部下方衔接一个自动滑动活动图片的控件。中间部位是4个功能模块图,每个功能模块图都展示其对应的功能,每个图片都绑定一个用来切换到对应Activity界面的监听器。底部是一个Listview列表布局的方式,向用户展示最新热门活动和相关热门景点的信息。

3.2 数据库更新与实时推送

数据库模块采用从客户端到云端完整的数据存储解决方案,云端提供数据管理功能,客户端提供数据访问相关模块,APP已经在云端创建好表结构和关系,云端会自动生成Restful接口,然后在客户端调用mcm模块API方法即可,mcm封装了多个对象,其中model,query,relation是通用的。针对于用户相关操作如登录、注册、查询等,是一个具体的实现,数据库的信息以JSON对象的形式给前端。运用这种方式,大大提高APP运行速度,提升整体用户体验。实时推送功能模块采用APiCloud的一体化消息后台推送功能,可以一键推送给用户,编辑快捷有效,推送信息准确。其推送功能包括定时发送、正在发送和发送成功等状态的推送消息。为后期维护和提高用户体验提供方便。

3.3 搜索定位实现

基于百度地图提供的开放的Android API[5],运用百度地图的API进行搜索定位,编程实现业务相关的搜索定位系统。该模块使用的接口是调用百度地图API,通过接口实现将当期搜索任务及其对应的搜索结果传送到服务器端,然后服务器端将搜索任务及其对应的搜索结果存入数据库。然后在布局文件中添加地图控件,再编写应用代码即可。其接口逻辑图如图2所示。

4 结束语

在移动互联网发达的现代生活中,移动互联网极大地改变了人们的生活方式,使资源的共享化程度大大提升,能够将此技术应用到旅游业中,在给旅游者带来方便的同时也使得社会资源和自然资源得以充分利用。

本文主要阐述的是,利用跨平台框架开发的APP能够提供当地自助游的相关资讯。无论从用户角度还是从商家角度,该APP都将给使用者提供极大的便利,经过实际测试使用,APP运行稳定,设计合理,可以快捷、方便地在系统中使用其他所有功能。因此,其具有很广阔的市场前景。在以后的使用推广中,系统将不断更新,增添新的功能。

参考文献:

[1] 陈天宇. 基于Android的航空订票系统设计与实现[D].长春:吉林大学,2013.

[2] 王晓兰. 基于Android的自助导游系统的设计与实现[D]. 成都:电子科技大学,2013.

[3] 闫晓东. 基于分布式光纤传感器的远程实时监测系统的研究[D]. 成都:电子科技大学,2014.

[4] Inmon W H.数据仓库[M]. 王志海,譯.北京:机械工业出版社, 2000.

[5] Williams M.Google Maps API Basic Tutorial[EB/OL]. http://econym.org.uk/gmap/index.htm.

猜你喜欢
移动互联
新西兰高职教育教学模式初探
场景传播视阈下的网络直播探析