Résumé de la séquence
Cette séquence présente l'application «Me&Map» qui doit fonctionner à la fois sur «petits terminaux» (utilisation d'un «split view») et «grands terminaux» (utilisation d'un «tab bar»).
Cette application comporte deux hiérarchies de vues: la première contient une zone de saisie d'adresses et une cartes qui se positionne sur les adresses saisies. La seconde est un historique des adresses saisies.
Pour identifier les coordonnées GPS de l'adresse saisie, l'application s'appuie sur un service de Google dont l'URL type est indiquée ci-dessous:
https://maps.googleapis.com/maps/api/geocode/xml?addresse=<adresse>&sensor=false&key=<clef>
où <adresse> est l'adresse saisie (encodée pour passer sur une URL), et où <clef> est votre clef d'accès au service de Google (hélas il n'eest plus en accès totalement libre).
Les cartes peuvent s'afficher dans les modes suivants: carte, satellite et hybride. Un switch dans les préférences permet d'autoriser par défaut un affichage satellite, sinon, c'est la carte qui est affichée.
L'historique est présenté sous la forme d'une «TableView» qui doit pouvoir être sauvegardée (par défaut, la liste est initialisée avec le contenu de cette sauvegarde).
Mots clefs : NSURLRequest, NSURLConnection, NSURLConnectionDelegate, NSURLConnectionDataDelegate, NSXMLParser, NSXMLParserDelegate, NSCoding, NSFileManager, NSUserDefaults, UITableViewController, UISplitViewController, UITabBarController, MKMapView.
Accéder à la séquence
Si la séquence ne s'affiche pas dans le cadre ci-dessous, vous pouvez y acéder via le lien dans le cartouche.
Liens utiles
Voici quelques références pour les auditeurs souhaitant approfondir certains points:
- UITabBarController (Apple),
- UITableView (Apple),
- UITableViewController (Apple),
- UISplitViewController (Apple),
- UISplitViewControllerDelegate (Apple),
- NSURL/URL Class Reference (Apple),
- NSURLRequest/URLRequest Class Reference (Apple),
- NSURLSession/URLSession Class Reference (Apple),
- NSURLSessionDataTask/URLSessionDataTask Class Reference (Apple),
- NSURLConnectionDelegate Protocol Reference (Apple),
- NSURLConnectionDataDelegate Protocol Reference (Apple),
- NSURLConnectionDownloadDelegate Protocol Reference (Apple).
- NSXMLParser/XMLParser Class Reference (Apple),
- NSXMLParserDelegate/XMLParserDelegate Protocol Reference (Apple),
- UIApplicationDelegate Protocol Reference (Apple),
- NSUserDefaults Class Reference (Apple),
- MKMapView Class Reference (Apple),