GPS 위성 데이터를 가져 오는 간단한 활동을 작성 중입니다. 나는 최대가다는 것을 알고있다. 32 개의 GPS 위성이 있고 그 중 24 개가 작동합니다. 내 위치 (베를린 - 독일)에서 한 번에 최대를보아야합니다. 12 개의 GPS 위성. 내가 밖에서 응용 프로그램을 테스트 할 때 나는 12 개 이상의 눈에 보이는 위성을 얻는다. 종종 나는 심지어 20 이상을 얻었고 거의 모든 것이 수정으로 사용되었습니다. 다음 코드를 사용하여 위성 데이터를 표시합니다.Android에서 20 개가 넘는 Gps.Satellites를 정상적으로 볼 수 있습니까?
@Override
public 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을 가지고 있습니다. 내가 잘못 했니? 그 인공위성들은 내가 궤도에있는 위성이 아닌가? 미리 감사드립니다.
API 이름은 변경되지 않았지만 일부 휴대 전화는 이제 GPS + GLONASS (러시아어 GPS와 동일)를 사용합니다. 이는 더 많은 위성이 표시되고 수정 사항을 가져올 수 있음을 의미합니다. – Brian
고마워요 브라이언! 나는 그런 생각을하지 않았다. 내 Galaxy S3를 사용하고 GPS/GLONASS를 지원합니다 (또한 상자에 적혀 있습니다). – user1516385