好久没写博客了,最近都在忙其他事。
最近遇到一个问题就是 做了一个基于手机GPS模块的APP,客户要求根据GPS获得的坐标与指定点的坐标计算距离,小于规定的并滞留5分钟时,自动结束或者提示。
效果什么的都做出来了,但是苦于一个问题: GPS 有没有信 p>
按照之前写的项目 里面并没有如何显示信 客户反应定位什么到挺准的但是自动结束提示 这个不准 定的5分钟 实际是 6分钟或者 12分钟甚至30分钟后才提示。
开始以为是自己写的有问题,在测试机上(博主自己的手机 三星A7 2016版)完全木有问题啊 很准,测了几次后发现也出现上面提到的问题 ,其实不是手机的问题,是GPS 信 的问题,定的是5分钟 但是如果在4分钟的时候 没GPS 信 这个时候是不做处理的 只有等有GPS 信 的时候才会继续判断 ,这个过程如果一直没有GPS信 的话那就没戏了。
这个问题我们知道但是客户不知道啊,于是只好在项目里面添加一个显示当前GSP连接上卫星颗数显示。
百度了一大堆 有现成的好 开始粘贴复制,拿起键盘就是干!!!!!
在开始GPS处使用
好了,开始运行结果输出的log是
11-09 15:38:38.282 27788-27825/com.sss I/lh: onStatusChanged: GPS 正常工作
11-09 15:38:38.302 27788-27825/com.ssss I/lh: 卫星状态改变
11-09 15:38:38.302 27788-27825/com.sss I/System.out: 搜索到:28颗卫星 max :255
11-09 15:38:40.272 27788-27825/com.sss I/lh: maxSatellites: 255
- - 我靠 看到这里 搜索到了 28颗卫星 这可和我之前了解到 只要搜星 至少4颗就可以定位,现在 28颗了 结果还是静悄悄的木有一点反应。
于是在下了好几款GPS测试的软件 打开一看 赤果果的一样 也是20-30颗卫星 但是他的有效卫星数 是 0,这是为什么呢p>
经过在 上求爷爷求奶奶以后,知道了一个叫 卫星信燥比 的概念 (请饶恕博主孤陋寡闻以及大学期间患上了健忘症)
}
运行 结果 果然如此 信燥比全是0.0。
11-09 15:49:57.262 27788-8049/com.sss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/comsss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/comsss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/com.sss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/com.sss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/com.ssss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/com.sss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/com.sss I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-8049/comssscagps I/System.out: 搜索到:28颗卫星 max :255
11-09 15:49:57.262 27788-27825/com.sss.cagps I/lh: 卫星状态改变
11-09 15:49:57.262 27788-27825/comsss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.sss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.sss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.sss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/comsss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.sss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.sss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/comsss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/cosss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.sssscagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/cosss.cagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.sssagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/cosssgps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/comsssgps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.ssssscagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/comsssgps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/comsssgps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.shsssgps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/cosssagps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.ssssgps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/cosssgps I/lh: onGpsStatusChanged: 信噪比0.0
11-09 15:49:57.262 27788-27825/com.ssss.cagps I/System.out: 搜索到:28颗卫星 max :255
可以看到全是0.0 这也解释了为什么 已经连上了28颗卫星,就是迟迟无法定位的原因。
问题找到了,下一个问题接踵而来:之前说至少要4颗卫星就可以定位了,但是看信燥比有10颗卫星有信 了 为什么还是没数据呢p>
之后又是各个 站博客群聊里面跪求 信燥比多少合适,直到看到了上面找到的答案 引用其中一段:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!