SDK Google Maps iOS, Obtention de la position actuelle de l'utilisateur
Pour mon iOS
application (bâtiment iOS7
),j'ai besoin d'afficher le nom d'utilisateur de l'emplacement actuel lors de l'application de la charge.Je suis à l'aide de Google Maps iOS SDK
. Je suis ce
Google Map
Mais je ne peux pas le comprendre. S'il vous plaît aider si vous passez par le chemin.
source d'informationauteur Sofeda
Vous devez vous connecter pour publier un commentaire.
Il semble
Google Maps iOS SDK
ne peut pas accéder à la position de l'appareil.Donc, vous avez à récupérer la position à l'aide
CLLocationManager
deiOS
.Tout d'abord, ajoutez le
CoreLocation.framework
à votre projet :Project Navigator
Build Phases
CoreLocation.framework
dans leLink Binary with Libraries
Puis tout ce que vous devez faire est de suivre l'exemple de base de La documentation d'Apple.
Créer un
CLLocationManager
probablement dans votreViewDidLoad
:Avec le
CLLocationManagerDelegate
à chaque fois que la position est mise à jour, vous pouvez mettre à jour de position de l'utilisateur sur votreGoogle Maps
:Oublier ma réponse précédente. Cela fonctionne bien si vous utilisez le natif MapKit.cadre.
En fait GoogleMaps pour iOS faire tout le travail pour vous. Vous n'avez pas à utiliser CoreLocation directement.
La seule chose que vous avez à faire est d'ajouter
yourMapView.myLocationEnabled = YES;
et le cadre va tout faire. (À l'exception de centrer la carte sur vous).Ce que j'ai fait : j'ai tout simplement suivi les étapes suivantes la documentation. Et j'ai eu une carte centrée sur Sydney, mais si j'ai agrandi et déplacé à ma place (si vous utilisez un périphérique réel, sinon utiliser des outils de simulation pour centrer sur l'Apple emplacement), j'ai pu voir le point bleu sur ma position.
Maintenant, si vous souhaitez mettre à jour la carte pour suivre votre position, vous pouvez copier Google exemple
MyLocationViewController.m
qui est inclus dans le répertoire de l'infrastructure. Ils ont juste ajouter un observateur sur lamyLocation
propriété pour mettre à jour les propriétés de la caméra:Avec la doc que je vous ai donné les échantillons inclus dans le cadre que vous devriez être en mesure de faire ce que vous voulez.
Xcode 8.1, Swift 3, Google Maps iOS 2.1
Étape par étape la recette:
1.) Ajouter une clé de la chaîne d'Info.plist (ouvert que le code source):
2.) Ajouter
CLLocationManagerDelegate
à votre vue-contrôleur de classe:3.) Ajouter
CLLocationManager
dans votre classe:4.) Demander la permission:
5.) Attendez l'autorisation et activer la localisation:
6.) Ajouter observables pour changement de lieu:
Que c'est!
Sur n'importe quel appareil iOS, obtenir l'emplacement de l'utilisateur avec L'Emplacement De Noyau. Plus précisément, vous voulez le CLLocation classe (et CLLocationManager).
Est délégué méthode didTapMyLocationButton n'est pas?
https://developers.google.com/maps/documentation/ios/reference/protocol_g_m_s_map_view_delegate-p#ac0e0171b811e839d9021800ca9fd33f4
Et vous pouvez obtenir la localisation par
L'emplacement actuel de ne pas s'afficher sur le simulateur... connecter un périphérique réel et de lui donner un essai
J'ai passé 2 jours de course dans le simulateur et ne savent pas qu'il n'a pas de simuler des endroits
il existe de nombreuses méthodes...
J'ai utilisé cette méthode et ça marche dans tous les cas. Google vous donne tout avec la réponse au format json et ses sur vous la façon dont vous traitez avec ces données.
Certaines étapes sont là pour charger google map dans votre projet.
trouver la clé api à partir de ce lien https://developers.google.com/places/ios-api/
connectez-vous avec votre compte google pour ajouter à votre projet et créer un ios clé.
ensuite l'utiliser dans votre projet
de permettre à toutes les api nécessaires pour google map
a-googlemaps sdk pour ios
b-googlemap direction de l'api
c-" " javasripts api
d - sélecteur d'api
e - lieux de l'api pour ios
f matrice de distance api
dans appdelegate méthode...
si google map ne fonctionne pas, cela signifie que vous devez ajouter un cadre
tous les meilleurs de jouer avec google map