2016-08-09 12 views
1

私は経路変更に続く地図の膨大な数の地点または経路にナビゲートしていますが、目的地に到達するとナビゲーションコールバックの方法にはなりませんonDestinationReachedは地図上の効果。到達した目的地のナビゲーションがコールバックに達していません

SKBBLERマップの問題は長いルートにナビゲートしていますか?経路が図に示すような別の問題は、シミュレーションのナビゲーションがユーザーの介入なしに停止します。

route

答えて

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()あなたは、その後、「simulate from log」のナビゲーションオプションを使用してログを再生することができますログインしたら、ロギングが

を停止しなければならないとき。旅行を見ると本当のルートは問題を指摘するでしょう。

関連する問題