AndroidGPS定位详解(3)

来源:互联网 发布:中国最穷的地方 知乎 编辑:程序博客网 时间:2024/06/07 20:45
5、GpsStatus

GpsStatus,GPS状态信息,上面在卫星状态变化时,我们就用到了GpsStatus。

//实例化   
GpsStatus gpsStatus = locationManager.getGpsStatus(null);// 获取当前状态   
//获取默认最大卫星数   
int maxSatellites = gpsStatus.getMaxSatellites();     
//获取第一次定位时间(启动到第一次定位)   
int costTime=gpsStatus.getTimeToFirstFix();   
//获取卫星   
Iterable<GpsSatellite> iterable=gpsStatus.getSatellites();   
//一般再次转换成Iterator   
Iterator<GpsSatellite> itrator=iterable.iterator();  


6、GpsSatellite
   
GpsSatellite,定位卫星,包含卫星的方位、高度、伪随机噪声码、信噪比等信息。

     
//获取卫星   
Iterable<GpsSatellite> iterable=gpsStatus.getSatellites();   
//再次转换成Iterator   
Iterator<GpsSatellite> itrator=iterable.iterator();   
//通过遍历重新整理为ArrayList   
ArrayList<GpsSatellite> satelliteList=new ArrayList<GpsSatellite>();   
int count=0;   
int maxSatellites=gpsStatus.getMaxSatellites();   
while (itrator.hasNext() && count <= maxSatellites) {     
    GpsSatellite satellite = itrator.next();     
    satelliteList.add(satellite);     
    count++;   
}   
System.out.println("总共搜索到"+count+"颗卫星");   
//输出卫星信息   
for(int i=0;i<satelliteList.size();i++){   
    //卫星的方位角,浮点型数据   
    System.out.println(satelliteList.get(i).getAzimuth());   
    //卫星的高度,浮点型数据   
    System.out.println(satelliteList.get(i).getElevation());   
    //卫星的伪随机噪声码,整形数据   
    System.out.println(satelliteList.get(i).getPrn());   
    //卫星的信噪比,浮点型数据   
    System.out.println(satelliteList.get(i).getSnr());   
    //卫星是否有年历表,布尔型数据   
    System.out.println(satelliteList.get(i).hasAlmanac());   
    //卫星是否有星历表,布尔型数据   
    System.out.println(satelliteList.get(i).hasEphemeris());   
    //卫星是否被用于近期的GPS修正计算   
    System.out.println(satelliteList.get(i).hasAlmanac());   
}  

原创粉丝点击