簡體   English   中英

如何打開“google.navigation:q=<someLocation> “在android webview中?

[英]How to open "google.navigation:q=<someLocation>" in android webview?

如何在android webview中打開“google.navigation:q=”? 此 URL 打開單獨的 Google Maps 應用程序,但我希望它出現在我的 webview 中,以便我可以在其下方顯示其他信息。

我在用

在活動 1 中:

      String urlString="https://www.google" +
                    ".com/maps/dir/? 
      api=1&destination="+locations.get(position)
                    +"&travelmode=driving";
      Intent mapIntent = new Intent(view.getContext(), 
      NavigateActivity.class);
      mapIntent.putExtra("url", urlString); //Optional parameters               
      context.startActivity(mapIntent);

在活動 2 中:

    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        mapURL = extras.getString("url");
    }
    WebView webView = (WebView) findViewById(R.id.webView);
    webView.setWebViewClient(new WebViewClient());
    webView.getSettings().setJavaScriptEnabled(true);

    if (mapURL != null && !mapURL.isEmpty()) {

        webView.loadUrl(mapURL);
    }

但它在 webview 中打開簡單的地圖應用程序,用戶必須手動輸入起始目的地。 我希望它自動獲取用戶的當前位置並提示打開 GPS(如果 GPS 尚未打開)並在 webview 本身中啟動輪流導航。

這可能嗎? 請指導。

根據請求方向的官方開發人員指南並啟動谷歌地圖,結果添加&dir_action=navigate參數:

  • dir_action=navigate(可選):根據起點是否可用,啟動到指定目的地的逐向導航或路線預覽。 如果用戶指定了一個原點並且它不靠近用戶當前位置,或者用戶當前位置不可用,則地圖會啟動路線預覽。 如果用戶沒有指定原點(在這種情況下,原點默認為用戶當前位置),或者原點靠近用戶當前位置,地圖將啟動逐向導航。 請注意,並非所有 Google 地圖產品和/或所有目的地之間都提供導航功能; 在這些情況下,此參數將被忽略。

應該可以解決您的問題,但現在 Google 似乎僅通過Google 地圖應用程序支持逐次導航(我什至嘗試從手機瀏覽器手動啟動它,但沒有成功)。 有關更多信息,請查看xomena 的這個答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM