关于android webview里HTML5的地理位置定位,在别的浏览器中打开可以定位,在我自己的webview却不能

2024-11-25 05:14:44
推荐回答(3个)
回答1:

我也遇到了同样的问题,我查看了下源码解决了,主要代码如下:
//启用数据库
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);
}
配置权限:


回答2:

参考实现:网页链接

回答3:

到底是不同的浏览器还是不同的页面?