Android GMS 无法通过网络定位
2016-08-10 16:03
218 查看
预置KK GMS后,打开系统定位功能,Google Maps等应用无法通过网络定位 有两个部分需要确认: 1.系统对提供LocationProvider的应用需要进行申明,而KK GMS将NetworkLocation应用的功能集成到了GmsCore(Google Play Service)中,所以需要添加GmsCore的packageName进去:
framework/base/core/res/res/values/config.xml
com.android.location.fused
com.google.android.location
com.google.android.gms
2.GMS4.4_r3(包含r3)之后版本在满足1条件下依然可能存在无法使用网络定位功能,请继续按照如下修改操作:
请在alpsexternalwpa_supplicant_8wpa_supplicantss.c中的如下函数中修改
static void wpa_bss_copy_res(struct wpa_bss *dst, struct wpa_scan_res *src,
struct os_time *fetch_time)
{
struct timespec ts;//add this line;
dst->flags = src->flags;
os_memcpy(dst->bssid, src->bssid, ETH_ALEN);
dst->freq = src->freq;
dst->beacon_int = src->beacon_int;
dst->caps = src->caps;
dst->qual = src->qual;
dst->noise = src->noise;
dst->level = src->level;
/* dst->tsf = src->tsf;*/ //delete this line
//add below code
if (clock_gettime(CLOCK_MONOTONIC, &ts) != 0)
dst->tsf = src->tsf;
else
dst->tsf = ts.tv_sec*1000000 + ts.tv_nsec/1000;
//end
calculate_update_time(fetch_time, src->age, &dst->last_update);
}
如果是编译模块进行验证,请先执行./mk &project_name mm external/wpa_supplicant_8/wpa_supplicant
将alps/out/target/product/project_name/system/bin/wpa_supplicant push到system/bin/下,再执行命令
adb shell chmod 755 system/bin/wpa_supplicant
重启系统后验证
framework/base/core/res/res/values/config.xml
com.android.location.fused
com.google.android.location
com.google.android.gms
2.GMS4.4_r3(包含r3)之后版本在满足1条件下依然可能存在无法使用网络定位功能,请继续按照如下修改操作:
请在alpsexternalwpa_supplicant_8wpa_supplicantss.c中的如下函数中修改
static void wpa_bss_copy_res(struct wpa_bss *dst, struct wpa_scan_res *src,
struct os_time *fetch_time)
{
struct timespec ts;//add this line;
dst->flags = src->flags;
os_memcpy(dst->bssid, src->bssid, ETH_ALEN);
dst->freq = src->freq;
dst->beacon_int = src->beacon_int;
dst->caps = src->caps;
dst->qual = src->qual;
dst->noise = src->noise;
dst->level = src->level;
/* dst->tsf = src->tsf;*/ //delete this line
//add below code
if (clock_gettime(CLOCK_MONOTONIC, &ts) != 0)
dst->tsf = src->tsf;
else
dst->tsf = ts.tv_sec*1000000 + ts.tv_nsec/1000;
//end
calculate_update_time(fetch_time, src->age, &dst->last_update);
}
如果是编译模块进行验证,请先执行./mk &project_name mm external/wpa_supplicant_8/wpa_supplicant
将alps/out/target/product/project_name/system/bin/wpa_supplicant push到system/bin/下,再执行命令
adb shell chmod 755 system/bin/wpa_supplicant
重启系统后验证
相关文章推荐
- Android GMS无法通过网络定位
- Android GMS无法通过网络定位
- Android手机GPS卫星定位与通过WLAN与移动网络定位的区别?
- 解决Android下Google Maps无法通过GSM基站定位问题
- 部分国行Android手机缺少谷歌GMS服务包导致HTML5 Geolocation无法定位的问题
- KK GMS无法通过网络定位
- android开发通过基站手机网络实现定位功能(Google实现)
- android下如何通过jni监控wifi网络连接、dhcpcd执行和power电源控制
- 浅析android下如何通过jni监控wifi网络连接、dhcpcd执行和power电源控制
- SQL2005无法通过网络连接
- Android Map Api 使用和开发(2) 定位我的位置、地图弹出泡泡、通过经纬度获取地址
- 使用Windows server 2008 R2 wds 和 MDT2010 部署 Windows7 和 Windows xp时,客户端通过网络启动后,蓝屏或者黑屏,无法进入安装界面。
- 使用Windows server 2008 R2 wds 和 MDT2010 部署 Windows7 和 Windows xp时,客户端通过网络启动后,蓝屏或者黑屏,无法进入安装界面。
- 网络程序如何通过无法配置的windows防火墙
- sl400通过ac无法连接psk加密无线网络
- Android Map Api 使用和开发(2) 定位我的位置、地图弹出泡泡、通过经纬度获取地址
- VMware通过bridge的方式无法连到网络
- 通过网络调试android
- Android通过URL获取网络资源
- 网络堵塞、业务中断 通过鹰眼准确定位