网站建设与维护 排序题,做网站建设公司赚钱吗,担路网络科技有限公司的服务,孟津网站建设很多的App都会有这种需求#xff0c;需要把自己的轨迹绘制在地图上来加标一段行踪#xff0c;使得自己的行程展现出来#xff0c;通过地图的展示#xff0c;自己的行程也就一目了然了。
这里利用Google Map 把自己的行程展现出来#xff0c;注意这里用到了上一章的基础需要把自己的轨迹绘制在地图上来加标一段行踪使得自己的行程展现出来通过地图的展示自己的行程也就一目了然了。
这里利用Google Map 把自己的行程展现出来注意这里用到了上一章的基础还不熟悉的可以先看看上一章的注意事项。
行程轨迹
首先我们需要有一个前台的服务来实时的获取我们的地理位置信息在Android中可以使用FusedLocationProviderClient FusedLocationProviderClient 通过设置回调的时间可以根据时间的间隔不断地把地理位置信息回调给我们。
val locationRequest LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY,LOCATION_UPDATE_INTERVAL).setWaitForAccurateLocation(false).setMinUpdateIntervalMillis(LOCATION_FASTEST_UPDATE_INTERVAL).build()fusedLocationProviderClient.requestLocationUpdates(locationRequest,locationCallback,Looper.getMainLooper())setMinUpdateIntervalMillis 用来设置间隔的时间locationCallback 用来设置回传实时的地理位置信息。
把fusedLocationProviderClient 放到某一个服务中不停地获取实时的地理位置。
在locationCallback 中把实时的地理位置不断地post出来谁观察到地理位置就可以把数据展示出来。
locationList.postValue(this)绘制
Google Map 中已经提供了很多的绘制Api只要熟悉如何使用这些Api画图那就不是什么大事情了。
比如用来画线的可以使用如下的函数
private fun drawPolyline() {val polyline map.addPolyline(PolylineOptions().apply {width(10f)color(Color.BLUE)jointType(JointType.ROUND)startCap(ButtCap())endCap(ButtCap())addAll(locationList)})}locationList 给出了地理位置坐标把地理位置坐标放到map里Google Map 根据地理位置信息绘制出轨迹图。 地图的设置
当Google Map 初始化完成准备好以后会调用onMapReady在这个函数中会给出地图的实例可以对这个实例进行相应的设置。
map.uiSettings.apply {isZoomControlsEnabled falseisZoomGesturesEnabled falseisRotateGesturesEnabled falseisTiltGesturesEnabled falseisCompassEnabled falseisScrollGesturesEnabled false}如是否允许手势是否可以放大这里都是可以进行设置的更多的设置和谷歌地图的使用可以参考相应的文档。
如果需要本文的代码可以私信我。