在Android中获取20多个可见Gps.Satellite是否正常?

在Android中获取20多个可见Gps.Satellite是否正常?,第1张

概述我正在写一个简短的活动来获取GPS卫星数据.我知道最大那里有32颗GPS卫星,其中24颗处于活动状态.一次在我的位置(德国柏林),我应该只会看到最高12个GPS卫星.当我在外面测试应用程序时,我得到的可见卫星远远超过12个.通常,我得到的甚至超过20,几乎所有这些都是固定使用的.我使用以下

我正在写一个简短的活动来获取GPS卫星数据.我知道最大那里有32颗GPS卫星,其中24颗处于活动状态.一次在我的位置(德国柏林),我应该只会看到最高12个GPS卫星.当我在外面测试应用程序时,我得到的可见卫星远远超过12个.通常,我得到的甚至超过20,几乎所有这些都是固定使用的.我使用以下代码来显示卫星数据:

@OverrIDepublic voID onGpsstatusChanged(int event) {    //Call on GPS Status changes, such as satellites info    String gpsstats = "";    gpsstatus = locationManager.getGpsstatus(gpsstatus);    if (gpsstatus != null) {       Iterable<GpsSatellite>satellites = gpsstatus.getSatellites();       Iterator<GpsSatellite>sat = satellites.iterator();       int visibleSats = 0;       while (sat.hasNext()) {          satellite = sat.next();          gpsstats += "SATELliTE " + (visibleSats++) + "\n"                        + "\t PRN: " + satellite.getPrn() + "\n"                                            + "\t signal-noise-ratio: " + satellite.getSnr() + "\n"                        + "\t azimuth: " + satellite.getAzimuth() + "°\n"                        + "\t elevation: " + satellite.getElevation() + "°\n"                        + "\t used in fix: " + satellite.usedInFix() + "\n"                        + "\t has almanac data: " + satellite.hasAlmanac() + "\n"                        + "\t has ephemeris data: " + satellite.hasEphemeris() + "\n"                        + "\n";       }       sats.setText(gpsstats);      }       }

我得到的所有数据似乎都是正确的.它们都有不同的值和PRN.我做错了吗?我看到的那些卫星不在轨道上吗?先感谢您.

解决方法:

在半球上最多可以看到16个GPS卫星.如果您看到更多,则它们来自其他GNSS提供程序,例如GLONASS(或在欧洲有时是2个EGNOS卫星).
GPS卫星的PRN号为1-32,因此您可以将其与GLONASS区别开来.

总结

以上是内存溢出为你收集整理的在Android中获取20多个可见Gps.Satellite是否正常?全部内容,希望文章能够帮你解决在Android中获取20多个可见Gps.Satellite是否正常?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1086825.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存