接入滴滴打车html5 网页版

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenhuakang/article/details/82771476

使用webview加载html5

由于涉及定位功能

if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION)
                != PackageManager.PERMISSION_GRANTED
                || ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
                != PackageManager.PERMISSION_GRANTED
                || ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
                != PackageManager.PERMISSION_GRANTED) {
            Toast.makeText(getApplicationContext(),"没有权限,请手动开启定位权限",Toast.LENGTH_SHORT).show();
            ActivityCompat.requestPermissions(MainActivity.this,new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.WRITE_EXTERNAL_STORAGE}, 100);
            return false;
   }


开启权限之后,webView开启地理位置功能

WebView webView = (WebView)findViewById(R.id.webview);  
WebSettings webSettings = webView.getSettings();  
webSettings.setJavaScriptEnabled(true);  
webSettings.setDatabaseEnabled(true);      
String dir = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath();   
webSettings.setGeolocationDatabasePath(dir);       

webSettings.setGeolocationEnabled(true);    //启用地理定位  
  
webSettings.setDomStorageEnabled(true)    
webView.setWebChromeClient(new WebChromeClient() {  
  @Override  
  public void onReceivedIcon(WebView view, Bitmap icon) {  
     super.onReceivedIcon(view, icon);  
  
}  
  
@Override  
public void onGeolocationPermissionsShowPrompt(String origin,Callback callback) {  
  callback.invoke(origin, true, false);    
  super.onGeolocationPermissionsShowPrompt(origin, callback);  
  
}  
});

使用webView加载滴滴打车的网页地址:

https://common.diditaxi.com.cn/general/webEntry?wx=true&bizid=257&channel=70365

使用安卓手机可以正常使用滴滴打车

猜你喜欢

转载自blog.csdn.net/chenhuakang/article/details/82771476