8 个解决方案
#1
怎么没有回复的呢?
#2
权限加了吗?
#3
加权限啦
#4
有可能是你用来测试的手机的gsm被修改了,换一个手机试试。至于浏览器支持,我猜测是浏览器在开发的时候封装了其他地图定位功能进去。
#5
解决了没,我也在纠结着呢
#6
你们谁解决了啊,我现在遇见了
#7
我现在也遇到了这样的问题!WebView加载H5的页面,然后页面自己定位,有的手机定位没问题,但有的手机例如华为的手机定位就是失败!感觉好坑啊!
#8
//启用数据库
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" />
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" />
#1
怎么没有回复的呢?
#2
权限加了吗?
#3
加权限啦
#4
有可能是你用来测试的手机的gsm被修改了,换一个手机试试。至于浏览器支持,我猜测是浏览器在开发的时候封装了其他地图定位功能进去。
#5
解决了没,我也在纠结着呢
#6
你们谁解决了啊,我现在遇见了
#7
我现在也遇到了这样的问题!WebView加载H5的页面,然后页面自己定位,有的手机定位没问题,但有的手机例如华为的手机定位就是失败!感觉好坑啊!
#8
//启用数据库
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" />
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" />