基于Google map的个人线路追踪的分析和研究

时间:2022-09-05 04:42:30

基于Google map的个人线路追踪的分析和研究

【摘要】当前社会很多人沉迷于网络世界,很少出门运动,对于上班族和学生更是如此。因此开发一个个人线路追踪和分析的应用能提醒人们保持乐观的生活方式。文章对该应用做了初步的需求分析,并详解了开发的难点。

【关键词】Google Map;定位分析;Android

随着社会的不断进步和科技的迅速发展,网络已经成为人们日常生活的必备条件,同时,网络技术的不断跟新也使得它对人们的吸引力越来越大。对于上班族来说,许多人都承受着社会、家庭带来的巨大压力,上班的时候不得不一直面对着电脑工作,下班的时候也一直处于消极的状态中,经常依靠网络聊天和网络游戏等方式释放压力;对于学生来说,很多都上完课直接泡在寝室上网、玩电脑,更有自控能力比较差的,根本无法抵挡网络带来的诱惑。上述的情况,目前已经非常普遍,已经成为一个社会现象,许多人宁愿沉浸于网络世界也不愿意去体验打球或旅游等户外运动,这些人将逐渐出现情绪变得压抑补稳定,身体素质下降等状况。

因此,开发一个合理的追踪和分析系统能提醒人们:自己处于怎样的生活状态?与自己设定的生活方式相差多少?我该怎么做?

Google Map是Google公司提供的电子地图服务,包括局部详细的卫星照片。它能提供三种视图:一是矢量地图(传统地图),可提供政区和交通以及商业信息;二是不同分辨率的卫星照片(俯视地图,与Google Earth上的卫星照片基本一样);三是后来加上的地形视图,可以用以显示地形和等高线。目前,针对Google Map所开发的应用有很多,其中最实用的就是GPS。本系统所采用的研究方法是:基于Android平台,开发一个Google Map应用,定时收集某一用户的当前位置,与Google Map的实际地图相比较,分析其作息特点,得出结论并给予建议。

其主要的研究有以下几点:

1.定时收集用户的位置

系统每5分钟收集一次用户当前所在位置的坐标,但是并不是每一次获取的坐标都进行存储。假设用户在家呆了一整天,那当天每次收集的数据应偏差不大,所以当当前收集数据与上一次收集数据的偏差在一定范围内的时候,该坐标数据将不存入数据库,该方法能有效地节约存储空间。时间间隔设置的代码如下:

//每5分钟执行代码

handler=new Handler();

final Runnable runnable=new Runnable()

{

public void run()

{

handler.postDelayed(this,

300000);

}

};

handler.postDelayed(runnable,300000);

用户可以自行设定获取数据的间隔时间。

2.实时分析过程中的大量数据读取问题

系统每割一段时间会收集用户的坐标位置,并储存在设备中,虽然收集的数据只是坐标,但是长时间的获取会导致数据量比较大。通常存储的方式有两种,一种是存在文本文档等类似文档中,另一种是存在数据库中。第一种方式存取速度相对来说比较快,但是安全性有待提高;对一个成熟的应用系统来说,通常会选择第二种方式,但对于数据库而言,如果我们要分析收集的坐标,就是要频繁大量地去读写数据库,如果记录有几十万行甚至几百万行,那就会出现读取缓慢等一系列的问题。

系统采用如下的方法能一定程度上解决这个问题:

·每隔一段时间(比如一天),自动对数据进行整理,得出一个合适的结论或建议,并删除当天数据,而不是等待用户去查看。这样可以有效地把使用的存储空间控制在一定的范围内。并记录每一天的数据,帮用户更好的分析对比。

·查询数据时采用预处理。使用PreparedStatement代替Statement语句。由于PreparedStatement对象已预编译过,所以其执行速度要快于Statement对象。因此,多次执行的SQL语句经常创建为Pre

-paredStatement对象,以提高效率。

·对数据进行分表处理,把大量的数据按一定的规则分成几个小表。在多用户操作数据过程中,能有效地减少锁表的情况;对于当前系统而言,能加快设备的响应时间,减少用户的等待。

3.分析过程中的地点定位分析

对于用户来说,地点的定位不能固定在某个点上,而是应定位在一个特定的范围内,系统设定所有的特定区域为长方形,用长方形左上角的坐标和右下角的坐标来确定该特定区域的范围。定位分析的方式通常有两种,一种由用户自行设定区域,比如学生用户可以设定地图上的三个特定区域为A(寝室楼)、B(教学楼)、C(操场),他们的坐标标记为(XAL,YAL,XAR,YAR)、(XBL,YBL,XBR,YBR)、(XCL,YCL,XCR,YCR),如果用户当前获取的坐标值(X,Y)刚好满足X>=XAL&&X=YAR&&Y

4.智能化地给出结论和建议

该系统可以统计并分析在家、在工作和在玩的时间,帮助合理规划自己的生活。以用户为例,根据收集到的数据,可以分别统计在寝室、教室、操场等具体时间段,并与用户预设值的时间分配或系统推荐做比较。统计的时间段可以是一天,也可以是几天甚至几个月。只要用户查看,或者设置提醒,则系统将通过算法得出反馈意见,并转达给用户。

该系统在使用上有一定的局限性,硬件条件上需要一个拥有Android平台的设备,软件方面,需要一定的空间存储定位数据。如何优化数据存储,如何保证数据安全性是今后将要考虑和改进的地方。

上一篇:基于S3C2410和LINUX的触摸屏驱动 下一篇:当前社会环境下大学生就业能力的培养与探索