iPhone SDK: Track χρήστες θέσης με χρήση GPS

ψήφοι
2

Έχω μερικές ερωτήσεις σχετικά με CoreLocation και GPS.

Πρώτον, ποια μέθοδο πυρήνα τοποθεσία χρησιμοποιείται για να πάρει συνεχώς τους χρήστες τρέχουσες συντεταγμένες; Και σε ποιο χρονικό διάστημα θα πρέπει αυτά να ανακτηθούν;

Δεύτερον, θα πρέπει αυτές οι συντεταγμένες να ωθείται σε μια NSMutableArray κάθε φορά που λαμβάνονται, έτσι ώστε η σειρά των συντεταγμένων θα εκπροσωπήσει τη διαδρομή των χρηστών;

Ευχαριστώ, απλά θέλουν να ξεκινήσετε να μου το μυαλό γύρω από αυτό.

Δημοσιεύθηκε 19/05/2010 στις 15:15
πηγή χρήστη
Σε άλλες γλώσσες...                            


4 απαντήσεις

ψήφοι
11

Ένα πολύ συνοπτικό κείμενο:

Κατ 'αρχάς, να εγκρίνει το <CLLocationManagerDelegate>πρωτόκολλο στο .h σας, και #import <CoreLocation/CoreLocation.h>.

Στη συνέχεια, το .m go:

- (void)viewDidLoad {
    locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;
    [locationManager startUpdatingLocation];
}


-(void)locationManager:(CLLocationManager *)manager
   didUpdateToLocation:(CLLocation *)newLocation
          fromLocation:(CLLocation *)oldLocation
{
    CLLocationCoordinate2D here =  newLocation.coordinate;
    NSLog(@"%f  %f ", here.latitude, here.longitude);
}

Σας -(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocationμέθοδος θα πάρει pinged κάθε φορά πυρήνα Τοποθεσία έχει κάτι να πει σε σας, η οποία θα πρέπει να συμβεί κάθε λίγα δευτερόλεπτα. αυτά τα αντικείμενα CLLocation περιέχει πληροφορίες σχετικά με την ακρίβεια, ώστε να μπορείτε να οθόνη για τα καλά σημεία σε αυτή τη μέθοδο.

Να είστε βέβαιος να καλέσετε [locationManager stopUpdatingLocation]και στη συνέχεια [locationManager release]σε κάποιο σημείο!

Καλή τύχη εξεύρεση τον εαυτό σας!

Απαντήθηκε 19/05/2010 στις 16:27
πηγή χρήστη

ψήφοι
1

Θα πρέπει να κάνετε τα εξής:

  1. Εάν η συσκευή δεν μπορεί να έχει πρόσβαση στο Internet
    1. Πάρτε τις συντεταγμένες από τη συσκευή GPS
    2. Αποστολή αυτές τις συντεταγμένες μέσω SMS
    3. Λήψη και να αποκωδικοποιήσει το μήνυμα SMS στο SMS πύλη θα πρέπει να ρυθμίσετε να λαμβάνετε πληροφορίες από τη συσκευή.
    4. Ενημερώστε τις πληροφορίες σχετικά με τη βάση δεδομένων της εφαρμογής ή οποιοδήποτε άλλο κατάστημα που χρησιμοποιείτε
    5. Ενημέρωση της θέση στο χάρτη με τις τελευταίες πληροφορίες
  2. Εάν η συσκευή μπορεί να έχει πρόσβαση στο Internet
    1. Πάρτε τις συντεταγμένες από τη συσκευή GPS
    2. Σύνδεση σε εξυπηρετητή εφαρμογών (μπορεί να είναι κάποια υπηρεσία) και να ανεβάσετε πληροφορίες
    3. Ενημερώστε τις πληροφορίες σχετικά με τη βάση δεδομένων της εφαρμογής ή οποιοδήποτε άλλο κατάστημα που χρησιμοποιείτε
    4. Ενημέρωση της θέση στο χάρτη με τις τελευταίες πληροφορίες
Απαντήθηκε 30/08/2012 στις 14:02
πηγή χρήστη

ψήφοι
1

Είστε σε θέση να καθορίσει ποια περιοχή είναι αποδεκτή για την ακρίβεια, καθώς και πόσο συχνά θέλετε να λαμβάνετε αυτόματες ενημερώσεις (με βάση την απόσταση από το μηχανισμό τελευταίο σημείο). Επίσης μπορείτε απλά να απενεργοποιήσετε τον υπεύθυνο του θέση και ανοίξτε τον πάλι κατά βούληση μέσω κάποιας χρήση ενός χρονοδιακόπτη.

Όσο για την αποθήκευση των θέσεις για να οικοδομήσουμε μια διαδρομή, δεν είναι τόσο απλό του. Θα πάρετε συνεχώς θέσεις GPS σε πρώτη μέχρι να επιτευχθεί η επιθυμητή ακρίβεια, καθώς και για οποιαδήποτε σημεία στο μέλλον μπορείτε να πάρετε περισσότερες από μία που είναι ανακριβή, πριν να πάρετε μια καλή θέση. Έτσι, την οικοδόμηση ενός καταλόγου των σημείων αυτών θα βασικά ακριβώς είναι ένας κατάλογος της διαδρομής τους, μαζί με πολλά έξτρα πόντους. Θα μπορούσε να λύσει αυτό με την εξοικονόμηση μόνο τα σημεία που έχουν την ακρίβεια που επιθυμείτε, αλλά είναι μια ατελή κόσμο από αυτή την άποψη.

Καλύτερη περίπτωση θα ήθελα να προτείνω να κρατήσει δύο λίστες, μία είναι η διαδρομή και το άλλο είναι ένα τρέξιμο λίστα με τοποθεσίες όπου μπορείτε να συγκρίνετε μέχρι να πάρετε μια πολύ ακριβή τοποθεσία, στη συνέχεια, βάζοντας ότι στη λίστα πορεία σας. Μερικά από τα παραδείγματα έργων κάνουμε τα πράγματα προς αυτή την κατεύθυνση, θα τους δείτε.

Απαντήθηκε 19/05/2010 στις 16:15
πηγή χρήστη

ψήφοι
1

Ο καλύτερος τρόπος για να διαβάζεται το CLLocationManager Class αναφοράς , το οποίο συνδέει με αρκετές παράδειγμα έργα. Η σύντομη έκδοση:

  1. Ρυθμίστε το delegateακίνητο σε μια κατηγορία που θα λαμβάνετε ενημερώσεις τοποθεσίας.
  2. Εφαρμογή του CLLocationManagerDelegateπρωτοκόλλου του εκπροσώπου.
  3. Καλέστε τους appopriate μεθόδους για να ξεκινήσετε την ενημέρωση τοποθεσία ή / και ονομασία.
Απαντήθηκε 19/05/2010 στις 15:24
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more