前言:我们在跑步项目开始前,做了很多调研,包括分析高德地图和百度地图,他们提供的api,猎鹰轨迹收集等等;还反编译了许多第三方运动APP的一些技术点,地图使用等等。在这些准备的基础之上,结合我们自身的需求,我们可以大概的得出一个初步的跑步方案:
一、跑步方案设计
一般来说,运动类app 都会进行以下几个步骤:
第一步:地图展示,获取用户位置
通过手机APP,或智能硬件获取用户位置
1)Android 定位SDK
2)iOS 定位SDK
3)智能硬件定位
第二步:开始跑步,用户轨迹展示,经纬度等数据保存,计算配速
第三步:结束跑步,上传数据到后台,分享运动轨迹
第四步:其他场景,如轨迹回放等等
所以:我们需要考虑的主要有以下三个大的部分:
1、地图api 部分
2、android 系统相关
3、数据处理
我们可以看到,目前罗列出来的几个主要功能都是比较核心的,首要是要保证数据采集的准确性和连续不中断。
后续的计算和地图轨迹绘制才能具体体现出来。也就是说,理想状态下要保证:
1、定位准确
2、数据不丢失,计算准确
3、流畅不卡顿,不发生内存问题
4、不被系统回收进程
5、开发成本最小,易修改
如果我们把这个项目抽成一个业务模块,放在远智教育APP项目中,应该是一个可以独立运行,拆解自由和解耦的模块,目前我们已经部署了模块化的开发模式,将一个业务部分单独调试,编译,方便开发。
下一步,我们通过反编译,结合实际操作,来看看跑步APP中每一个功能点的实现思路。