2016-07-27 2 views
0

Le géocodage inversé nécessite-t-il le cellulaire/le wifi? J'utilise le code suivant pour trouver le nom de la ville et le code postal. Ce code fonctionnera-t-il dans un environnement avec une connexion GPS mais sans connexion cellulaire?Le géocodage inversé nécessite-t-il le cellulaire/le wifi?

geoCoder.reverseGeocodeLocation(location, completionHandler: { (placemarks, error) -> Void in 
     print("REVERSE COMPLETED") 
     // Place details 
     var placeMark: CLPlacemark! 
     placeMark = placemarks?[0] 

     // Address dictionary 
     print(placeMark.addressDictionary) 

     // City 
     if let city = placeMark.addressDictionary!["City"] as? NSString { 
      print("You are in \(city)") 
     } else { 
      print("An error occured while fetching the CITY.") 
     } 

     // Zip code 
     if let zip = placeMark.addressDictionary!["ZIP"] as? NSString { 
      print("The zip code is \(zip)") 
     } else { 
      print("An error occured while fetching the ZIP code.") 
     } 
    }) 
+0

GPS vous donne lat/long etc. Il ne vous donne pas de frontières politiques. –

+0

Ce n'est pas "Swift Reverse geocoding". Le géocodage et le géocodage inverse n'ont rien à voir avec Swift. – nhgrif

+0

@nhgrif, s'il vous plaît ne pas modifier mes réponses pour les choses qui sont stylistiques. Vous avez supprimé mon commentaire sur la question d'être lié au swift, puis j'ai ajouté presque exactement la même chose qu'un commentaire. –

Répondre

0

Oui, géocodage et géocodage inverse les deux nécessitent une connexion Internet. Si vous devez le faire localement, vous avez besoin d'un logiciel SIG et d'une grande base de données géographiques contenant la géographie de la zone dans laquelle vous géocodez.

Le logiciel et les bases de données sont à la fois grands et coûteux. Je ne connais pas le logiciel SIG pour les appareils mobiles - à partir du mobile, tout est fait sur le cloud. La seule chose que vous pouvez faire sur iOS avec un GPS mais pas d'Internet est de collecter les positions lat/longues.

BTW, cela n'a rien à voir avec Swift. Le gestionnaire de localisation fait partie d'iOS et peut être appelé depuis n'importe quelle langue prise en charge. Ce n'est pas "Géocodage rapide". C'est le géocodage iOS Core Location.

+0

Le dernier paragraphe est complètement hors de propos et sans rapport avec la question. J'ai essayé d'éditer pour nettoyer la réponse pour le rendre plus clair, mais si vous insistez sur le fluff, ainsi soit-il. – nhgrif

+0

"Complètement non pertinent", et pourtant vous avez posté presque la même chose qu'un commentaire. Ne faites pas de jugements éditoriaux sur les publications des autres. –

+0

Il y a une nette différence entre les commentaires et les réponses. Mon commentaire à la question était d'expliquer ma modification à l'asker (pour éviter, espérons-le, de revenir sur le montage comme vous l'avez fait). À la fin de la journée, le point est ... Stack Overflow n'est pas un forum. Ce n'est pas les médias sociaux. Les gens utilisent ce site comme une ressource pour faire un vrai travail, et les peluches les gênent. – nhgrif