title: Webview google maps current location cannot retrieve and navigation for opening the google maps app failed
body: <p>I have create a google maps webview for my app and it cannot get the current location and after I set the destination and starting location the navigation does not intent to google maps can somebody help me solve this problem?</p>
  
  <pre><code>package example.asus.com.map;
  
  import android.content.Intent;
  import android.net.Uri;
  import android.support.v7.app.AppCompatActivity;
  import android.os.Bundle;
  import android.webkit.WebView;
  import android.webkit.GeolocationPermissions;
  import android.webkit.WebChromeClient;
  
  import android.webkit.WebViewClient;
  import android.app.Activity;
  
  
  /**
   * A minimal WebView app with HTML5 geolocation capability
   *
   *  
   */
  public class MainActivity extends Activity {
  
  /**
   * WebViewClient subclass loads all hyperlinks in the existing WebView
   */
  public class GeoWebViewClient extends WebViewClient {
      @Override
      public boolean shouldOverrideUrlLoading(WebView view, String url) {
          // When user clicks a hyperlink, load in the existing WebView
          view.loadUrl(url);
          return true;
      }
  }
  
  /**
   * WebChromeClient subclass handles UI-related calls
   * Note: think chrome as in decoration, not the Chrome browser
   */
  public class GeoWebChromeClient extends WebChromeClient {
      @Override
      public void onGeolocationPermissionsShowPrompt(String origin,
  
  GeolocationPermissions.Callback callback) {
          // Always grant permission since the app itself requires location
          // permission and the user has therefore already granted it
          callback.invoke(origin, true, false);
      }
  }
  
  WebView mWebView;
  
  /**
   * Called when the activity is first created.
   */
  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      mWebView = (WebView) findViewById(R.id.Webview);
      // Brower niceties -- pinch / zoom, follow links in place
      mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
      mWebView.getSettings().setBuiltInZoomControls(true);
      mWebView.setWebViewClient(new GeoWebViewClient());
      // Below required for geolocation
      mWebView.getSettings().setJavaScriptEnabled(true);
      mWebView.getSettings().setGeolocationEnabled(true);
      mWebView.setWebChromeClient(new GeoWebChromeClient());
      // Load google.com
      mWebView.loadUrl("http://www.google.com/maps");
  
  }
  
  @Override
  public void onBackPressed() {
      // Pop the browser back stack or exit the activity
      if (mWebView.canGoBack()) {
          mWebView.goBack();
      } else {
          super.onBackPressed();
      }
  }
  private class MyWebViewClient extends WebViewClient {
      @Override
      public boolean shouldOverrideUrlLoading(WebView webView, String url) {
          return false;
      }
  }
  }
  </code></pre>
  
  <p>Able to obtain current location<br>
  Able navigation for current location to destination</p>