您的位置:首页 > 移动开发 > Android开发

android 如何去获取手机Gps的信号强度

2015-11-11 10:10 537 查看
1,看到别人写的app里面有展示Gps信号强度的功能,我们的app也需要这个功能,我是先百度了一圈(没有发现要找到的内同,百度果然有些东西搜索不到),还是翻墙去的谷歌看到了,你也可以先去应用市场里面下载几个Gps相关的软件,比如:Gps工具箱,

GpsStatus.Listener gpsS = new GpsStatus.Listener() {
@Override
public void onGpsStatusChanged(int event) {
gpscount = 0;
// TODO Auto-generated method stub
if(event==GpsStatus.GPS_EVENT_FIRST_FIX){  
           //第一次定位  
       }else if(event==GpsStatus.GPS_EVENT_SATELLITE_STATUS){  
           //卫星状态改变  
           GpsStatus gpsStauts= locationManager.getGpsStatus(null); // 取当前状态  
           int maxSatellites = gpsStauts.getMaxSatellites(); //获取卫星颗数的默认最大值  
           
           Iterator<GpsSatellite> it = gpsStauts.getSatellites().iterator();//创建一个迭代器保存所有卫星  
           while (it.hasNext() && gpscount <= maxSatellites) {    
               GpsSatellite s = it.next();
               //可见卫星数量
               if(s.usedInFix()){
               //已定位卫星数量
               gpscount++;
               }
           }   
           gpsCount.Gpscount(gpscount);
     
       }else if(event==GpsStatus.GPS_EVENT_STARTED){  
           //定位启动  
       }else if(event==GpsStatus.GPS_EVENT_STOPPED){  
           //定位结束  
       }  
}
};

代码里面有一个已定位的卫星判断,这个方法返回的状态值就是

if(s.usedInFix()){
               //已定位卫星数量
               gpscount++;
               }

根据返回的卫星数量来判断当前Gps信号强度的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android Gps