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信号强度的。