关于android webview里HTML5的地理位置定位,在别的浏览器中打开可以定位,在我自己的webview却不能 android通过webview访问通过Html5定位的we...
\u5173\u4e8eandroid webview\u91ccHTML5\u7684\u5730\u7406\u4f4d\u7f6e\u5b9a\u4f4d\uff0c\u5728\u522b\u5c31\u662f\u628awebview\u52a0\u5230\u8fd9\u4e2aapp\u4e2d,\u5b9a\u5411\u8bbf\u95ee\u4e00\u4e2a\u7ad9\u70b9,\u5176\u4e2d\u7684\u4e00\u4e2a\u9875\u9762,\u6709\u767e\u5ea6\u5730\u56fe,\u65e0\u6cd5GPS\u5b9a\u4f4d\u7684\u6743\u9650,\u6240\u4ee5\u6211\u60f3,\u662f\u4e0d\u662f\u8981\u81ea\u5df1\u5199\u4ec0\u4e48\u65b9\u6cd5\u624b\u52a8\u7684\u8c03\u7528\u5b9a\u4f4d\u529f\u80fd\u5462,\u8be5\u600e\u4e48\u5173\u4e8eandroid webview\u91ccHTML5\u7684\u5730\u7406\u4f4d\u7f6e\u5b9a\u4f4d\uff0c\u5728\u522b
\u770b\u4e00\u4e0b\uff0c\u624b\u673a\u8bbe\u7f6e\uff0c\u6709\u65f6\u5019\u5bfb\u4e0d\u5230\u661f\uff0c\u5c31\u83b7\u5f97\u4e0d\u4e86\u7ecf\u7eac\u5ea6\u3002
我也遇到了同样的问题,我查看了下源码解决了,主要代码如下://启用数据库
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" />
参考实现:网页链接
到底是不同的浏览器还是不同的页面?
扩展阅读:android苹果版下载 ... download android version ... 国产xboxone ... android webview 75 ... android webview apk ... android webview 秒开 ... android webview更新 ... 苹果android在哪里找 ... android system webview ...