信噪比概念

信噪比,英文名称叫做SNR或S/N(SIGNAL-NOISE RATIO),又称为讯噪比。是指一个电子设备或者电子系统中信号与噪声的比例
信噪比越大此颗卫星越有效(也就是说可以定位)

  • 也就是说 设备搜索到的卫星颗数越多 设备定位效果越好,同时每颗卫星的信噪比值也要越高,如果信噪比值都是0的话;那跟没有搜索到一颗卫星效果是一样的。

获取设备搜索到的卫星颗数

  • 首先就是声明权限了大于Android M设备记得动态申请
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
  • 初始化LocationManager 开启Gps
//位置管理器
private LocationManager manager;/*** 初始化定位管理*/
private void initLocation() {manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);//判断GPS是否正常启动if (!manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {Toast.makeText(this, "请开启GPS导航", Toast.LENGTH_SHORT).show();//返回开启GPS导航设置界面Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);startActivityForResult(intent, 0);return;}//添加卫星状态改变监听manager.addGpsStatusListener(gpsStatusListener);//1000位最小的时间间隔,1为最小位移变化;也就是说每隔1000ms会回调一次位置信息manager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 1, locationListener);
}
  • 这里只关心卫星的一些信息,关于位置、经纬度信息这里就不关心了,所以上面的locationListener就是个空实现;这里重点看下卫星的获取,如下:
private GpsStatus.Listener gpsStatusListener = new GpsStatus.Listener() {@Overridepublic void onGpsStatusChanged(int event) {switch (event) {//卫星状态改变case GpsStatus.GPS_EVENT_SATELLITE_STATUS://获取当前状态GpsStatus gpsStatus = manager.getGpsStatus(null);//获取卫星颗数的默认最大值int maxSatellites = gpsStatus.getMaxSatellites();//获取所有的卫星Iterator<GpsSatellite> iters = gpsStatus.getSatellites().iterator();//卫星颗数统计int count = 0;StringBuilder sb = new StringBuilder();while (iters.hasNext() && count <= maxSatellites) {count++;GpsSatellite s = iters.next();//卫星的信噪比float snr = s.getSnr();sb.append("第").append(count).append("颗").append(":").append(snr).append("\n");}Log.e("TAG", sb.toString());break;default:break;}}
};

到这里基本上就大功告成了,数据都是直接从监听中取出来就好了,输出的结果:

  • 通过遍历gpsStatus.getSatellites();统计总卫星颗数同时获取每颗卫星的信噪比

Android中获取GPS搜索到的卫星颗数、并获取每颗卫星的信噪比相关推荐

  1. android网络获取经纬,Android中透过GPS或NetWork获取当前位置的经纬度

    Android中通过GPS或NetWork获取当前位置的经纬度 private double latitude=0.0; private double longitude =0.0; Location ...

  2. android 打印机列表中,在android中打印只搜索打印机

    我已经做了一个android应用程序,我试图打印一个示例文本文件,我想使用wifi连接打印机,我试过这个链接Wifi printing in android但它只是去搜索wifi打印机和什么都不做,我 ...

  3. android获取当前位置经纬度,Android中通过GPS或NetWork获取当前位置的经纬度

    今天在Android项目中要实现一个通过GPS或NetWork来获取当前移动终端设备的经纬度功能.要实现该功能要用到Android Framework 中的 LocationManager 类.下面我 ...

  4. android中实现GPS定位功能,Android中实现GPS定位的简单例子

    今天弄了一个多小时,写了一个GPS获取地理位置代码的小例子,包括参考了网上的一些代码,并且对代码进行了一些修改,希望对大家的帮助.具体代码如下:  要实用Adnroid平台的GPS设备,首先需要添加上 ...

  5. android软件查找号码位置,如何在Android中通过GPS获取位置时获取卫星名称或号码?...

    locationManager.getGpsStatus(null).getSatellites()(调用者可以传入GpsStatus对象以使用最新状态信息进行设置,也可以传递null以创建新的Gps ...

  6. android 伪造gps位置,在Android中使用GPS的假位置

    您正在开发一个将设置坐标(经度和纬度)的应用程序.它必须显示我的位置,因为我在那个坐标.它类似于位置欺骗者.. http://www.androidzoom.com/android_applicati ...

  7. android获取地址api,如果在Android中使用位置API给出纬度和经度,如何获取地址

    我有一个应用程序,我试图根据纬度.经度坐标获得一个位置的地址.当我试图打印所有特定坐标的地址时,我只得到一个地址.有没有办法获得所提供坐标的所有地址列表?我的代码段如下: 其中locationLati ...

  8. Android中如何使用GPS

    Android中如何使用GPS获取位置信息?一个小Demo如下 GPS简介 Gobal Positioning System,全球定位系统,是美国在20世纪70年代研制的一种以人造地球卫星为基础的高精 ...

  9. Android全球定位系统GPS使用教程大全-刘宇

    说到GPS这个名词,相信大家都不陌生,GPS全球定位技术嘛,嗯,Android中定位的方式 一般有这四种:GPS定位,WIFI定准,基站定位,AGPS定位(基站+GPS): 本系列教程只讲解GPS定位 ...

最新文章

  1. 迁移学习之VGG16和VGG19
  2. React组件常用设计模式之Render Props
  3. [xmlpull]XmlPull常见错误
  4. (002)每日SQL学习:删除名称重复的数据
  5. C++中比较两个浮点数是否相等
  6. android 工程结构,它到底是怎么运行的。
  7. 导览系统定制开发_联联周边游系统源码定制开发平台方案
  8. 解密昇腾AI处理器--DaVinci架构(控制单元)
  9. 如何战胜软件开发的复杂性?
  10. Mac adb 安装
  11. cuda 10.1 下载
  12. java熄灯问题,枚举算法案例--熄灯问题
  13. python助教_助教工作:关于如何使用python+excel快捷生成千帆竞发图
  14. Bugku web — ereg正则%00截断(代码审计) ——详细题解
  15. Win7系统下安装微磁学软件OOMMF方法
  16. 时间序列实践(天池大赛)之一
  17. 滚动条 实现的细节代码 SCROLLINFO
  18. Http? Https?
  19. GaussDB数据库安装详解
  20. CSI笔记【2】:正交频分多路复用技术/OFDM

热门文章

  1. 教你用Python绘制3D地图,做出来效果太酷炫啦~
  2. PHP 从菜鸟到大咖的踩坑之路
  3. 关于“存储空间不足”的问题
  4. MATLAB初学教程(一)
  5. 导航系统设计专题(六)——松组合导航系统与紧组合导航系统
  6. Ubuntu使用gedit时报waring
  7. TypeError: xxx() missing 1 required positional argument xxx
  8. 警察规范执法案例_警察改革沉浸式技术可以改变执法方式
  9. 四、Docker安装 Portainer 可视化工具
  10. TDH添加自定义参数