前言

         欢迎大家我分享和推荐好用的代码段~~

声明

         欢迎转载。但请保留文章原始出处:

         CSDN:
http://www.csdn.net

         雨季o莫忧离:http://blog.csdn.net/luckkof

正文

预置KK GMS后,打开系统定位功能,Google Maps等应用无法通过网络定位
有两个部分须要确认:
1.系统对提供LocationProvider的应用须要进行申明,而KK GMS将NetworkLocation应用的功能集成到了GmsCore(Google Play Service)中。所以须要加入GmsCore的packageName进去:

framework/base/core/res/res/values/config.xml

<string-array name="config_locationProviderPackageNames" translatable="false">

<!-- The standard AOSP fused location provider -->

<item>com.android.location.fused</item>

<!-- MTK add for GMS -->

<item>com.google.android.location</item>

<item>com.google.android.gms</item>

<!-- MTK add end -->

</string-array>

2.GMS4.4_r3(包括r3)之后版本号在满足1条件下依旧可能存在无法使用网络定位功能。请继续依照例如以下改动操作:

请在alps\external\wpa_supplicant_8\wpa_supplicant\bss.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无法通过网络定位的更多相关文章

  1. Android网络定位服务定制简述

    Android 添加高德或百度网络定位服务 Android的网络定位服务以第三方的APK方式提供服务,由于在国内Android原生自带的com.google.android.gms服务几乎处于不可用状 ...

  2. 实现Android的不同精度的定位(基于网络和GPS)

    解决方案: 实现Android的不同精度的定位(基于网络和GPS) Android中的定位服务的相关类基本上都在android.location包中,其中位置服务管理器(LocationManager ...

  3. Android开发之位置定位详解与实例解析(GPS定位、Google网络定位,BaiduLBS(SDK)定位)

    在android开发中地图和定位是很多软件不可或缺的内容,这些特色功能也给人们带来了很多方便.定位一般分为三种发方案:即GPS定位.Google网络定位以及基站定位 最简单的手机定位方式当然是通过GP ...

  4. 发现最新版百度Android 定位SDK v6.1.3 网络定位bug

    对于百度地图已经实在忍无可忍了,实验室两年以前的一个项目用到了百度地图,以前师兄毕业了,我来维护这个破项目,百度地图推出新版本出来后,老版本的api不能用了,不能做到向下兼容吗?换掉少量的api也就算 ...

  5. Android Google Maps API 网络服务用于网络定位、计算路线、获取经纬度、获取详细地址等

    extends:http://blog.csdn.net/h7870181/article/details/12505883 Google Maps API 网络服务 官网地址 : https://d ...

  6. Android那些事儿之LBS定位,实践测试lbs

    最近一朋友让我了解下安卓LBS获取位置信息,于是动手实践了一把.搜了一圈发现有篇博文可以参考:Android那些事儿之LBS定位,但是原文作者没有提供源码下载,于是动手实现了,现记录下来备忘,代码附在 ...

  7. Xamarin.Android 使用百度地图获取定位信息

    最近做一个项目,web端使用百度地图,PDA使用手持机自带的GPS定位系统获取经纬度,然后再百度地图上显示该经纬度会有一定距离的差异,这里就像可乐的瓶子拧上雪碧的盖子,能拧的上却不美观.所以为了数据的 ...

  8. Android系统中是否开启定位及定位模式的判断

    1.关于Android系统中不同的定位模式 Android系统中包括3中定位模式:   使用GPS.WLAN和移动网络 使用WLAN和移动网络 仅使用GPS 截图 特点 同时使用GPS.WIFI及基站 ...

  9. android post 方式 访问网络 实例

    android post 方式 访问网络 实例 因为Android4.0之后对使用网络有特殊要求,已经无法再在主线程中访问网络了,必须使用多线程访问的模式 该实例需要在android配置文件中添加 网 ...

随机推荐

  1. codeforces_B. Forgery

    http://codeforces.com/contest/1059/problem/B 题意: For simplicity, the signature is represented as an  ...

  2. hibernate cascade属性

    cascade属性是存在于set标签中,用来做级联删除和保存. 它的值有以下几种: 1)默认值是none,不做级联动作: 2)save-update:级联保存 3)delete:级联删除 4)all: ...

  3. 5-Java-C(调和级数)

    题目描述: 1/1 + 1/2 + 1/3 + 1/4 + ... 在数学上称为调和级数. 它是发散的,也就是说,只要加上足够多的项,就可以得到任意大的数字. 但是,它发散的很慢: 前1项和达到 1. ...

  4. 10 Steps To be a senior programmer

    What 软件工程师的职业生涯要历经以下几个阶段:初级.中级,最后才是高级.这篇文章主要是讲如何通过 10 个步骤助你成为一名高级软件工程师. Why 得到更多的报酬!因为你的薪水会随着你水平的提高而 ...

  5. CAD插入背景图片(网页版)

    把图片作为背景图片可见但是不能编辑操作. 主要用到函数说明: _DMxDrawX::DrawImageToBackground 绘光栅图到背景.详细说明如下: 参数 说明 BSTR sFileName ...

  6. Java B

    3.继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么? 答:父类: package test; public class FatherClass { public FatherClass( ...

  7. C#面试问题及答案

    1.遇到高并发的问题如何解决? 优化SQL语句 多线程 分布式服务器 集群 拆表2.Dictionary和ConurrentDictionary的区别? 后者是线程安全的 前者适用于单线程3.Dict ...

  8. 【转】C# 二进制,十进制,十六进制 互转

    //十进制转二进制 Console.WriteLine(Convert.ToString(69, 2)); //十进制转八进制 Console.WriteLine(Convert.ToString(6 ...

  9. JS_类数组

    [目录] 什么是数组 非类数组 类数组对象转化为数组 [类数组] 什么是类数组? 定义: 不具有数组的所具有的方法 拥有length属性,其属性(索引)为非负整数 类数组 var obj = { 0 ...

  10. -- HTML标记大全参考手册[推荐]

    --  HTML标记大全参考手册[推荐]总类(所有HTML文件都有的) 文件类型 <HTML></HTML> (放在档案的开头与结尾) 文件主题 <TITLE>&l ...