一款跑步类App开发记录

接到的第一个任务是做个实时绘制轨迹的Demo。之前没接触过地图相关的开发,查了好多资料。最后确定用高德提供的API。下面记录一下开发的过程以及遇到的问题。

  1. 首先在高德官网注册开发者账号,然后根据App名字获取相应的Key。
  2. 导入框架
  3. 拿到key之后,用到代码中。
  4. 根据高德开发平台提供的Demo了解到绘制路径主要是两个类MAPolyLineMAPolylineRenderer。其中MAPolyLine相当于数据源。
  5. 在绘制路径遇到了些麻烦。一开始选择每隔一定的距离绘制一条线,这种方案是可行的,但是路径绘制比较不圆滑,棱角分明,而且会出现比较飘的点。如下图所示:


    一款跑步类App开发记录_第1张图片
    IMG_7014.PNG

查找相关资料后了解到,需要将路径点进行优化。首先选择从官网找相应的Demo,查找相关资料后了解到,需要将路径点进行优化。首先在高德开放平台找到了轨迹平滑处理的Demo。很开心,简单学习后应用到App中,但是好景不长,又遇到了新的问题。因为采用的是每隔五米画一条线的方案,然后就出现绘制的路径是虚线的Bug,如下图:

一款跑步类App开发记录_第2张图片
IMG_7017.PNG

想了一下原因应该是优化后的点和实际定位的点有偏差。想了一下原因应该是优化后的点和实际定位的点有偏差。然后想了第二种方案,每次更新位置时将所有点进行重绘,而不是每次只绘制一条线段。满心欢喜的跑去测试,又出现了新的问题,绘制的线条涂抹痕迹严重,原因也很简单,就是没有将之前的覆盖物移除,都叠加在了一起。于是乎,每次绘制之前都将上一次的轨迹移除。线条倒是正常绘制了。但是出现了闪烁的Bug,原因未知,可能是频繁移除添加导致的吧。

目前优化后的效果是这样的:


一款跑步类App开发记录_第3张图片
IMG_7067.PNG
一款跑步类App开发记录_第4张图片
IMG_7068.PNG

具体如何优化的有时间再继续写。。

你可能感兴趣的:(一款跑步类App开发记录)