Tag: mapbox

在MapBox Android中检测完整的运动结束

我期待在MapBox的Android SDK中检测地图的完整动作结束。 完成我的意思是没有更多的用户交互(触摸)和相机移动(触摸移动或飞行惯性)。 由于在SDK中没有这种回调OnTouchListener ,所以我在MapView , OnTouchListener和OnMapChangedListener上组合了两个监听器(在Kotlin中很清楚): mapView.setOnTouchListener { _, event -> when (event.actionMasked) { MotionEvent.ACTION_DOWN -> { listener?.onMapDragBegin() } MotionEvent.ACTION_UP -> { listener?.onMapDragEnd() } } false } mapView.addOnMapChangedListener { c -> when (c) { MapView.REGION_WILL_CHANGE, MapView.REGION_WILL_CHANGE_ANIMATED -> { listener?.onMapMovementBegin() } MapView.REGION_DID_CHANGE, MapView.REGION_DID_CHANGE_ANIMATED -> { listener?.onMapMovementEnd() } } } 听众等待两个事件结束。 除了一个小细节之外,这个工作很好:抛出时,当用户停止触摸屏幕时发送两个结束事件,并且只有在调用REGION_WILL_CHANGE_ANIMATED地图更改之后。 所以有一段时间我不知道地图是否还在移动。 在日志中看起来像这样: 19:23:42.431: Map […]

如何在MapBox上显示房屋号码?

我在我的android项目中使用MapBox。 我需要显示房屋号码,但是我没有在文档中find这样的机会。 我可以得到房子号码标签,我把颜色设置为黑色,但是它的隐形。 我知道地图有这样的信息,它显示在Java引擎中。 有任何想法吗?

如何检测我在一个航点附近

我想使用mapbox-android SDK在Android(Kotlin)上制作一个导航应用程序。 我需要创建一个具有特定航点的航线,并且想要知道我何时靠近其中一个航点(例如前200米)。 我已经设法使用NavigationRoute对象显示带有航点的地图,并使用NavigationLauncher对象启动逐向导航。 不过,我不知道如何知道我什么时候靠近航点。 我已经阅读了关于里程碑事件监听器(步骤或路由),RouteProgress(腿或路由)的事情,但是我不知道这是否是正确的方法。 我试图用STEP_DISTANCE_REMAINING_METERS声明一个里程碑,并添加一个MilestoneEventListener,但是在我的日志中没有任何东西激活。 就像我说的,我甚至不知道这是否是正确的方法。 val milestone = RouteMilestone.Builder() .setIdentifier(100) .setTrigger(Trigger.all( Trigger.lt(TriggerProperty.STEP_DISTANCE_REMAINING_METERS, 200) )) .build() navigation = MapboxNavigation(this@MainActivity, Mapbox.getAccessToken()) navigation.addMilestone(milestone) navigation.addMilestoneEventListener { _, _, milestone -> Log.d(TAG, “milestone triggered: ” + milestone.instruction) } navigationMapRoute = NavigationMapRoute(navigation, mapView, map, R.style.NavigationMapRoute) navigationMapRoute!!.addRoute(currentRoute) 我正在使用这些版本的mapbox SDK mapbox-Android的SDK 5.3.2 mapboxfunction的Android导航:0.9.0 mapbox-Android的导航界面:0.9.0

Kotlin:我如何请求从模拟器访问ACCESS_FINE_LOCATION?

我正在使用地图,在模拟器上运行时,地图不起作用。 在我的日志中,出现一个错误,告诉我必须授予对ACCESS_FINE_LOCATION的访问权限。 我如何在KOTLIN中做到这一点? 我只能用JavafindS / O的答案。 我得到的错误是: 位置提供者需要ACCESS_FINE_LOCATION权限