android 高德地图历史轨迹回放速度进度暂停播放。

背景:项目需求。要求历史轨迹回放要能播放、暂停,对播放进度控制,播放速度控制,刚开始以官方demo的平滑移动作为demo进行开发,但是发现没法控制进度,速度只有一个API smoothMarker.setTotalDuration(40); 但是都没办法根据需求进行设置。速度太快信息框都有时跟不上会闪动。

所以理清思路:

分以下几个步骤

首先是后台返回经纬度数据列表

1.根据数据列表在地图 画线,画线api很容易,什么样式都可以设置。

2.接下来就是加上一个marker和信息框。官方的信息框如果不修改信息不会改变,默认加在起点位置。

3.就是设置进度,进度就是根据列表的长度设置。拖动进度就把marker移动到列表的position。

4.接着就是最后的速度了。速度因为没有API能调用,只能做定时任务。时间范围在1秒到40毫秒。

5.至于播放,暂停则更加容易了,通过定时任务取消就行了。

有了思路后,就开始搞起。完工还是先看一下效果图。

注:主要api   

AMap.animateCamera不适合在移动的时候使用,会卡顿跟不上,原因也有动画延时, AMap.moveCamera直接移动动中心点。

设置箭头的方向 Marker.setRotateAngle,后台返回是顺时针方向的数字,api要求的事逆时针。

其他直接看demo的代码,我直接放在官方demo的第一个item上面。

git demo 地址:https://github.com/talentsxh/mapMove

你可能感兴趣的:(高德地图,android,高德地图,高德地图历史轨迹,高德地图进度设置,高德地图速度设置,高德地图历史轨迹回放,轨迹回放)