1

我正在导航到重新路由后的地图中的大量点或路线,但是当用户到达目的地时,它既没有到达导航回调方法onDestinationReached现在在地图上显示任何效果。

是SKobbler地图导航到长途的问题吗?路线如图所示的另一个问题,在没有用户干预的情况下,模拟导航停止。

路线

4

1 回答 1

1

如果您已到达目的地(或其附近),则应触发回调。

了解正在发生的事情的唯一方法是记录实际行程,然后重播它以查看 SDK 认为它正在发生什么。

要记录行程,您可以使用SKPositionLoggingManager

 private void startNavigation() { 
    //..... navigation settings 
    if (configuration.getNavigationType() == SKNavigationSettings.SKNavigationType.REAL) { 
            navigationSettings.setNavigationType(SKNavigationSettings.SKNavigationType.REAL); 
            Date date = new Date(); 
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd_HH-mm-ss"); 
            final File navigationLogsFolder = 
                    new File(Environment.getExternalStorageDirectory() + File.separator + "YourFileName" 
                            + File.separator); 
            if (!navigationLogsFolder.exists()) { 
                navigationLogsFolder.mkdirs(); 
            } 
            final String fileName = navigationLogsFolder.getAbsolutePath() + "/" + dateFormat.format(date); 

            SKPositionLoggingManager.getInstance().startLoggingPositions(fileName, SKPositionLoggingManager.SPositionLoggingType.SK_POSITION_LOGGING_TYPE_LOG); 
        } 

        navigationManager.startNavigation(navigationSettings); 
      } 

注意 :

  1. 在此示例中,在导航开始之前开始记录设备位置。
  2. 有暂停、恢复和停止当前文件的记录过程的选项。请确保在应该停止记录时还调用 SKPositionLoggingManager().stopLoggingPositions()

获得日志后,您可以使用“从日志模拟”导航选项重播日志。查看行程与实际路线将指出问题所在。

于 2016-08-09T07:53:38.723 回答