J'utilise un fournisseur GPS et LocationListener.OnlocationChanged (emplacement de localisation) pour recevoir des correctifs de localisation.
Documentation dit, cet emplacement.getextras () Contient une touche NEXTE / PAIRE VALEUR: P>
satellites - le nombre de satellites utilisées pour dériver la solution p> blockQuote>
Mais sur la pratique, je reçois un objet supplémentaire vide - il n'y a pas de données là-bas.
Cela signifie-t-il que je reçois les correctifs A-GPS et non GPS? P>
3 Réponses :
Nope Cela signifie que votre fabricant de téléphone a décidé de ne pas la mettre en œuvre. (Ou vous pouvez utiliser le Utilisez un Network_Provider code> qui n'utilise pas satellites) p>
Nmealistener code>
et analyser les phrases pour connaître le nombre de satellites visibles ou utilisés. P>
J'utilise définitivement GPS_Provider. Il y a une chance que Samsung ne soit pas mis en œuvre cela à Nexus S?
Vous devriez être capable de l'obtenir à l'aide de [Bundle.get ("satellites")] ( développeur.android.com/referenc e / android / os / ... . Êtes-vous sûr que vous obtenez des corrections? Utilisez l'auditeur NMEA et regardez le
Vous avez raison, emplacement.getextras (). Getint ("satellites") supposons renvoyer le nombre de satellites. Mais ce n'est pas - je reçois toujours un zéro là-bas malgré le fait que l'objet de localisation lui-même contient une coordonnée valide
Pour obtenir le nombre de satellites utilisés par le moteur GPS, vous devez implémenter . Exemple ... P> android.location.gpstatus.listener code> et implémenter sa méthode
OngpsStatuschanged () code>.
public void onGpsStatusChanged(int event) {
int satellites = 0;
int satellitesInFix = 0;
int timetofix = locationManager.getGpsStatus(null).getTimeToFirstFix();
Log.i(TAG, "Time to first fix = " + timetofix);
for (GpsSatellite sat : locationManager.getGpsStatus(null).getSatellites()) {
if(sat.usedInFix()) {
satellitesInFix++;
}
satellites++;
}
Log.i(TAG, satellites + " Used In Last Fix ("+satellitesInFix+")");
}
Je ne comprends pas pourquoi j'ai besoin de mettre en œuvre un auditeur si je veux sonder pour le nombre de satellites ... pour essayer d'appeler Getsatellites () sans mettre en place un auditeur ne renvoie toujours aucun satellite, même lorsqu'un GPS a une solution et est verrouillé.
Il est très important d'ajouter l'auditeur au gestionnaire de localisation comme emplacementmanager.addgpsstatuslistener (
J'utilise l'emplacement.getextras (). Geint ("satellites"), et il donne le nombre de satellites en cours d'utilisation. P>