关于android webview里HTML5的地理位置定位,在别的浏览器中打开可以定位,在我自己的webview却不能
https://zhidao.baidu.com/question/527788230.html?qq-pf-to=pcqq.c2c
自己做了一个小app,就是把webwiew,嵌进来,又加了点别的功能,安装打开后,定向访问一个网站,其他的(如:js)等都正常,就是在一个百度地图的页面中无法定位,在UC和自带的浏览器中都可以,为什么呢,要设置什么参数还是要写什么方法吗?
我也遇到了同样的问题,我查看了下源码解决了,主要代码如下:
//启用数据库
webSettings.setDatabaseEnabled(true);
String dir = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath();
//启用地理定位
webSettings.setGeolocationEnabled(true);
//设置定位的数据库路径
webSettings.setGeolocationDatabasePath(dir);
//最重要的方法,一定要设置,这就是出不来的主要原因
webSettings.setDomStorageEnabled(true)
//配置权限(同样在WebChromeClient中实现)
public void onGeolocationPermissionsShowPrompt(String origin,
GeolocationPermissions.Callback callback) {
callback.invoke(origin, true, false);
super.onGeolocationPermissionsShowPrompt(origin, callback);
}
配置权限:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号