有关项目上潜在需要的移动端GIS系统源码整理,待后续更新
GPS Tools For Android
前言:
- GPS数据在做GIS开发时的一份宝贵的数据,在不侵犯他人隐私的情况下通过互联网的模式收集GPS是成本最为低廉的一种模式。
背景:
- 现在公司在做一个项目,接触到一些有关导航,地图等。而其中比较重要的是GPS数据,公司在GPS数据采购上平均每年都会花费数百万。
- 如果说有些数据花钱能够买到的话那么到还好至少是一条获取数据的途径,然而一些试验局的项目数据只能通过自己去采集,你需要开着专业测绘车以及其他设备到每个指定的地点进行数据的采集工作。
- 通常试验局的规模不大数据量也不会很大,数据的要求也不会太高在这种情况下我就自主研发了一款工具软件来解决我实际工作中所遇到的问题。
需求:
- 实现每10秒或者每移动10米存储一份GPS数据,每天的数据量为1440条,那么每年的数据量为525600条。
- 实现手动的定位GPS数据存储功能,手动数据要求可以编辑,可以添加数据的描述信息。
- 以上是工作过程当中是遇到需求,其实还包含了一些隐性的需求没被提及但是在我的第一个版本中就包含了很多隐性的需求。如:采集数据的显示,导出等等。
目的:
- 编写此demo的目的是实地测量当地城市公交站点的GPS数据。
解决方案:
- 原本打算使用高德地图的geocoder功能获取GPS数据的考虑的他有AGPS定位的功能但是同时没法保证其的定位数据的原始性,担心其数据是做过处理的所以果断的抉择了原始的GPS定位数据,虽然原始功能不带AGPS定位功能。
由于我们的测量工作都是户外基于这种场景完全可以使用原始的GPS定位功能。
基于需求的两种模式,可以分别存储两张表一张用于存储动态的GPS数据,另外一张用于存储手动的定位数据。
- 数据表结构唯一的区别在于后者多一个描述信息的字段,用于存储其的描述信息添加一个编辑的功能。
用户体验:
- 尽量少的页面跳转,按最少的按键。原本打算加广告的,不过觉得没什么意思,觉得会用这个软件的人相当的小众。广告在没有用户量的前提下根本就毫无意义,所以从多方面考虑断然的放弃了广告。
发布日志:
- 本应用为免费开源项目源码均在 sourceforge.net 上进行托管,在条件允许的情况下作者会不断的进行更新与发布。
- gpstools v0.1 for test (版本说明,小版本号为奇数的均为免费开源无广告版本,为偶数的均为商业或者有广告并且不开放源码。)
- GPS数据自动采集,手动采集两种数据采集方式,其中手动采集支持添加描述信息。自动采集数据时位置未发生偏移不采集重复数据。
- GPS数据采集数据的展示功能,提供分页显示。
- GPS数据的导出,支持XML,CSV两种格式。
- 系统设置功能,可以有选择的删选导出格式,分页数,以及清空历史数据。
- 用户手册功能,让用户熟知此软件的背景,方便其进一步的了解此软件。
- 提供用户反馈的功能,方便作者收集反馈信息在下个版本中再予以跟新。(这个功能我不知道有多少用户愿意用,出发点还是希望有用户提供宝贵意见)
关于作者:
- 热爱手指在键盘上跳舞的感觉,朋友们都叫我键盘动物。
- 新浪微博:键盘动物
- MSN/邮箱:fangqing.fan#hotmail.com
- 小小程序员一枚,专注移动开发。关注领域智能交通,移动通讯,物联网等。
参考文章
Fanfq, GPS Tools For Android, 2012.
有关项目上潜在需要的移动端GIS系统源码整理,待后续更新的更多相关文章
- ArrayDeque(JDK双端队列)源码深度剖析
ArrayDeque(JDK双端队列)源码深度剖析 前言 在本篇文章当中主要跟大家介绍JDK给我们提供的一种用数组实现的双端队列,在之前的文章LinkedList源码剖析当中我们已经介绍了一种双端队列 ...
- netty服务端启动--ServerBootstrap源码解析
netty服务端启动--ServerBootstrap源码解析 前面的第一篇文章中,我以spark中的netty客户端的创建为切入点,分析了netty的客户端引导类Bootstrap的参数设置以及启动 ...
- 基于tensorflow的‘端到端’的字符型验证码识别源码整理(github源码分享)
基于tensorflow的‘端到端’的字符型验证码识别 1 Abstract 验证码(CAPTCHA)的诞生本身是为了自动区分 自然人 和 机器人 的一套公开方法, 但是近几年的人工智能技术的发展 ...
- 基于python语言的tensorflow的‘端到端’的字符型验证码识别源码整理(github源码分享)
基于python语言的tensorflow的‘端到端’的字符型验证码识别 1 Abstract 验证码(CAPTCHA)的诞生本身是为了自动区分 自然人 和 机器人 的一套公开方法, 但是近几年的 ...
- 上传本地代码到github&&从github下载源码
最近在玩github,下面简单介绍下githup的使用 将本地代码同步到github. 使用Git GUI同步 1,先下载git,然后安装.右键如图所示. 2,在github里新建一个 reposi ...
- java crm 进销存 springmvc SSM 项目 系统 源码
系统介绍: 1.系统采用主流的 SSM 框架 jsp JSTL bootstrap html5 (PC浏览器使用) 2.springmvc +spring4.3.7+ mybaits3.3 SSM ...
- iOS项目开发实战——iOS网络编程获取网页Html源码
现在我们身处互联网的时代.不论什么一个软件或是App,都会或多或少与网络打交道,并不断发生数据交互.一个没有涉及网络编程的应用会显得比較low,这里我们将会開始使用Swift开发iOS应用,而且主要来 ...
- ZooKeeper单机服务端的启动源码阅读
程序的入口QuorumPeerMain public static void main(String[] args) { // QuorumPeerMain main = new QuorumPeer ...
- Netty服务端的启动源码分析
ServerBootstrap的构造: public class ServerBootstrap extends AbstractBootstrap<ServerBootstrap, Serve ...
随机推荐
- iOS开发Swift篇—(五)元组类型
iOS开发Swift篇—(五)元组类型 一.元组类型介绍 1.什么是元组类型 元组类型由 N个 任意类型的数据组成(N >= 0),组成元组类型的数据可以称为“元素” 示例: let posit ...
- python3读取chrome浏览器cookies
好几年前我在做一些自动化的脚本时,脑子里也闪过这样的想法:能不能直接把浏览器的cookies取出来用呢? 直到昨天看到代码<python模拟发送动弹>,想起来当年我也曾经有类似的想法没能完 ...
- jQuery遍历Json数组
var jsonArray= [{ "name": "张三", "password": "123456"},{ &qu ...
- 复制过来的东西也不靠谱,微信公众号第三方平台的API
API:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&veri ...
- JavaScript中__proto__与prototype的关系
一.所有构造器/函数的__proto__都指向Function.prototype,它是一个空函数(Empty function) 1 2 3 4 5 6 7 8 9 Number.__proto__ ...
- What does "Rxlch" mean in ENCODE?
In ENCODE project, we could see some files are called "...rxlch...", which means "rev ...
- 对于unallocated space的翻译 我想说几句话
在sqlserver中,当我们使用sp_spaceused查看数据库空间使用情况的时候 会看到属性unallocated space.所有的中文翻译都是“未保留供数据库对象使用的数据库空间”, 作为中 ...
- SAP HR宏 rp-provide-from-last
运行se11 Database table: 输入 TRMAC 点击display 查看其内容:第14个按钮(ctrl + shift +F10) 再Name 输入:rp-provide-from-l ...
- asp.net 前台通过Eval()绑定动态显示样式
1.a标签链接 <%#Eval("ConfigCode").ToString().ToLower() == "publishtext" ? "& ...
- iOS AudioQueue机制的延迟问题探究
关键字:VOIP,AudioUnit,AudioQueue,RemoteIO问题描述VOIP通话,iOS底层音频方式采用AudioUnit机制,本来也挺好,但是会有遇到CS域来电时RemoteIO挂死 ...