Créer sa première application iPhone

A LIRE AUSSI

  • Google Summit, le debrief d’un GSA
  • Sommet mondial sur la jeunesse BYND2015
  • Bye XP
  • La Coree du Sud annonce la 5G
  • La vie d’une équipe d’ingénieurs : Phase 1 – le projet démarre
Par -

networking,social input,mobile

Difficulté : 3 étoiles sur 5
Temps de développement : 3 heures
Compétences nécessaires : connaître les bases de la programmation orientée objet,
s’intéresser à l’ergonomie des appareils mobiles
Matériel nécessaire : un Mac, un iPhone de test
Logiciels nécessaires : Xcode et Instruments (fournis par Apple)Les outils d’Apple laissent libre cours à la créativité des développeurs. Jeux, utilitaires ou encore visionneuses d’images, tout est possible pourvu que vous respectiez les règles de l’App Store (pas de contenu adulte, notamment). Pour vous permettre de réaliser une application en quelques heures et ainsi de vous familiariser avec ces logiciels, nous nous sommes toutefois cantonnés au développement d’une fonction basique : l’affichage de l’heure en plein écran.

 

ÉTAPES PRÉLIMINAIRES

1. Ouvrez un compte sur le site d’Apple

 

Connectez-vous à la section développeurs (http://developer.apple.com) et créez votre compte. Pour soumettre des applications sur l’App Store, faites l’acquisition d’une licence (79 euros par an).

 

2. Obtenez la dernière version de Xcode

 

Téléchargez gratuitement l’environnement de développement d’Apple depuis votre compte. À noter que vous pouvez tester le logiciel sans compte ni licence, en faisant son acquisition sur le Mac App Store.

 

LA RECETTE

1. Créez un nouveau projet

 

Créer un nouveau projet Lancez Xcode et choisissez un template parmi ceux proposés. Cette base est toujours un bon point de départ. Pour réaliser une horloge, une seule vue suffira. Cliquez donc sur “View-based Application”.

 

2. Construisez la vue

 

Il s’agit de la partie la plus ludique. Tout se déroule dans le fichier “.xib”, via des glisser-déposer. Insérez vos labels (“heures/minutes” et “secondes”), définissez la taille des polices, sélectionnez la couleur d’arrière-plan… Construisez la vue

 

3. Façonnez l’orientation

 

Façonnez l'orientationFaçonnez l'orientation Pour déterminer le comportement de votre application lors du basculement en mode paysage, affinez les paramètres d’Autosizing. Cela permet de définir des largeurs flexibles, selon les labels.

 

4. Déclarez les deux labels

 

Dans le fichier “.h” (interface) et “.m” (implémentation de la classe Controller), indiquez la présence de vos deux labels, via les annotations @property et @synthesize. Déclarez les deux labels

 

5. Liez le code et l’interface

 

Liez le code et l'interface Dans le fichier “.h”, ajoutez IBOutlet aux annotations @property pour établir un lien entre le code et l’interface graphique. De retour dans le fichier “.xib”, sélectionnez les labels déclarés et reliez-les.

 

6. Affichez l’heure en temps réel

 

Créez une fonction “updateClock” pour mettre à jour l’affichage en temps réel. Définissez la méthode dans le “.h” et construisez-la dans le “.m”. À noter que sur iOS, la bonne gestion de la mémoire est cruciale. Lorsque vous créez un objet, faites-le via les appels successifs des méthodes “alloc” et “init”. Ensuite, appelez la méthode “release”, afin de libérer de la mémoire pour la suite. Affichez l'heure en temps réelAfficher l'heure en temps réel

 

7. Extrayez l’heure

 

Extrayez l'heure Déclarez un objet “dateFormatter” pour extraire les heures, les minutes et les secondes. Et n’oubliez pas de mettre un “release” dans le dealloc. Cela permet de détruire les objets “en cascade”, afin de libérer de la mémoire facilement.

 

8. Optimisez le démarrage

 

“ViewDidLoad” permet d’initialiser des données juste après le chargement de la vue. Initialisez ici votre objet “dateFormater”, afin de rendre votre application immédiatement opérationnelle. Retenez aussi que tout ce qui est fait dans le “ViewDidLoad” doit être défait dans le “ViewDidUnload”, toujours pour optimiser la gestion de la mémoire. Optimisez le démarrage

 

9. Gérez le fuseau horaire

 

Gérez le fuseau horaire Votre horloge doit prendre en compte le fuseau horaire réglé dans les préférences de l’utilisateur. Pas question d’afficher l’heure de Greenwich ! Utilisez donc le mécanisme “currentDate”.

 

10. Complétez la fonction

 

Complétez la fonction d’extraction de l’heure afin de formater l’affichage : “HH:mm” (24 heures) ou “hh:mm” (12 heures, AM/PM) pour les heures et les minutes ; “ss” pour les secondes.

 

11. Rafraîchissez l’affichage

 

Rafraîchissez l'affichage Afin de mettre à jour l’affichage en temps réel, créez un objet NSTimer qui appellera toutes les secondes la fonction “updateClock”. N’oubliez pas de la lancer une première fois au démarrage, via “viewWillAppear”. Sinon, durant une seconde, l’écran sera noir.

 

12. Affinez l’orientation

 

Autorisez le support des changements d’orientation de l’iPhone dans le “.m”. Peu importe la façon dont l’utilisateur tiendra son téléphone, votre horloge s’adaptera ainsi automatiquement. Affinez l'orientation

 

13. Cachez la barre

 

Cachez la barreCachez la barre Dans le fichier “.plist”, cachez la barre de statut (celle qui affiche le nom de l’opérateur et le niveau de batterie) lors du lancement de l’application. Et pour qu’elle soit masquée définitivement, ajoutez un bout de code dans le fichier “.m”.

 

14. Testez virtuellement

 

Lancez le simulateur d’iPhone intégré à Xcode et vérifiez le bon comportement de l’application. Testez les modes d’affichage portrait et paysage grâce aux raccourcis clavier “cmd + flèche droite” et “cmd + flèche gauche” Testez virtuellementTestez virtuellement

 

15. Optimisez et stabilisez

 

Optimisez et stabilisezOptimisez et stabilisez Téléchargez puis lancez le logiciel Instruments d’Apple. Testez notamment la gestion de la mémoire et du CPU de votre application. S’il y a des erreurs, prenez en compte les remarques du logiciel avant de retourner dans Xcode.

 

16. Testez réellement

 

Transférez le projet sur votre iPhone de test et profitez de votre première application “maison”. Testez réellement : Position verticale...... et horizontale

 

TROIS QUESTIONS POUR ALLER PLUS LOIN

1. Quels éléments faut-il prendre en compte avant de développer sur iOS ?

 

Cyril. Tout d’abord, il faut déterminer le besoin. Une application iPhone n’est pas un fourre-tout ! Il faut donc mener une réflexion autour de son utilité, sous peine de devoir tout recommencer en cours de route. Ensuite, il faut concevoir une interface adaptée. En situation de mobilité, l’utilisateur doit arriver à son but le plus vite possible. Il faut donc lister un nombre limité d’actions au sein du logiciel.

 

2. Quelles sont les principales difficultés lors du développement ?

 

Sur l’iPhone, la gestion de la mémoire est très importante. Apple n’a pas inclus de garbage collector (gestionnaire automatique de la mémoire) pour les applications, afin d’économiser l’énergie et de préserver l’autonomie des appareils. C’est donc aux développeurs de bien gérer cet aspect, sous peine de voir le logiciel refusé. Il faut également suivre toutes les règles édictées par Apple concernant l’interface et le code, pour espérer être accepté sur l’App Store.

 

3. Est-il facile d’optimiser les applications pour l’iPhone, l’iPad et l’écran Retina ?

 

L’écran Retina de l’iPhone 4 offre une densité de pixels quatre fois supérieure aux générations précédentes. Pour en tirer profit, il suffit d’insérer des images disposant d’une résolution adaptée, en plus de celles d’origine. Concernant les applications compatibles iPhone et iPad, le développeur doit s’adapter aux deux tailles d’écran. Sur un iPhone, tout doit tenir sur une page, avec une navigation verticale. Alors que sur iPad, en mode paysage, l’écran peut être scindé en deux. Cela nécessite une partie de code supplémentaire.Article rédigé par Christophe Brunet   chez ovh
amzo

amzo

Co fondateur de Social Input, passionné de web et d'entrepreneuriat. Toujours en mode veille éveillée
amzo

Comments are closed.