Facebook Twitter Google Plus RSS Feed Email

    mercredi 11 septembre 2013

    Introduction au développement Android


    Le développement sous Android se fait en Java.En effet,
    Google a porté un sous-ensemble de Java Standard (SE) ainsi qu'un certain nombre de projets open source dont ils avaient besoin (Apache, etc.). Si vous êtes habitué à faire du Java, attendez-vous donc à ne pas retrouver la totalité des paquets que vous utilisez quotidiennement. Cependant, si vous voulez utiliser des bibliothèques tiers (gestion du RSS, des Web Service, etc.) et que ces bibliothèques sont compatibles Android, alors vous pourrez les incorporer dans votre projet Android, comme tout projet Java.
    La programmation sous Android se démarque d'un développement traditionnel sur plusieurs points :
    • Comme tous terminaux mobiles, le problème de la gestion de l'écran (IHM) est complexe : en effet, à la différence des iPhone ®, les téléphones sous Android ont des tailles d'écran différentes. De plus, Android est aussi supporté par les tablettes qui ont des écrans beaucoup plus grands et dont il faut repenser entièrement l'interface .
    • Les ressources sont limitées sur un téléphone, d'autant plus que vous ne pouvez pas vous permettre de monopoliser le téléphone ; d'autres fonctionnalités, plus importantes (gestion des appels par exemple) doivent continuer de fonctionner normalement.
    • La connectivité n'est pas toujours présente : votre programme doit être robuste pour s'assurer de gérer les interruptions ponctuelles ou permanentes de connexion.
    • Le déploiement se fait via un système centralisé et géré par Google : l'Android Market ®. Ce dernier est régi par des règles que vous ne pouvez transgresser au risque de voir votre application en être supprimée.

    Afin de développer votre application Android, vous devrez utiliser les composants mis à disposition par Google. Nous reviendrons par la suite sur chacun de ces points, mais il est important que vous ayez ce vocabulaire basique en tête :
    • Emulator (Emulateur) : Même si vous avez un téléphone Android, vous ne pourrez tester le comportement de votre application sur n versions d'Android et n écrans différents. Pour faciliter les développements, Google a donc inclus dans son SDK un émulateur permettant d'avoir accès à toutes les versions d'Android. Les constructeurs jouent aussi le jeu en fournissant des émulateurs pour chacun de leurs téléphones (HTC, Samsung, ...).
    • Activity (Activité) : Voyez une activité comme une fenêtre de dialogue. Sous Android, la taille de l'écran ne vous permet pas souvent d'afficher plusieurs fenêtres en parallèle mais plutôt un passage d'écrans en écrans : de gauche à droite pour avancer dans l'application, de droite à gauche pour revenir en arrière. Ces écrans successifs sont appelés des activités.
    • Content Provider (Fournisseur de contenu) : Les différentes applications sur votre terminal ne doivent pas obligatoirement être indépendantes. En effet, vous pouvez avoir besoin d'informations stockées dans d'autres applications (récupération des SMS, des paramètres du téléphone, etc.)
    • Intents (Intentions) : Les intentions vont permettre aux programmes d'avoir des notifications sur des évènements. Ces derniers peuvent être envoyés par le terminal (réception d'un appel, d'un SMS, connexion internet perdue) ou par une autre application souhaitant vous envoyer une information.
    • Services : Votre application va être développée sous formes de n activités, chacune en appelant une autre. Cependant votre activité peut être arrêtée à tout moment lorsque l'utilisateur décide de quitter votre application. L'objectif des services est de pouvoir continuer à lancer des opérations alors que votre application n'est pas « lancée », c'est-à-dire non visible sur le terminal. Ceci peut vous permettre de contacter toutes les n minutes un serveur pour vérifier s'il y a de nouveaux éléments (articles de journaux, emails, RSS, etc.) ou encore de jouer de la musique en streaming en tâche de fond.

    Ensuite, pour ceux qui ont déjà fait du développement mobile auparavant sous Palm ou Windows Mobile (6 et inférieur) rassurez-vous, pour toutes les opérations bas niveau (GPS, Stockage de données, Bluetooth), Google nous fournit une boite à outils complète nous permettant de gérer le tout à un niveau très haut.
    Enfin, nous aborderons principalement dans ces tutoriels la manière d'aborder le développement sous Android avec Java, mais il peut aussi s'interfacer avec du C++. Le sous-projet NDK (Native Development Kit) d'Android va nous permettre d'appeler du code C++ depuis notre code Java, ce qui peut se révéler très utile pour les opérations demandant un temps d'exécution très faible. Nous verrons tout ceci dans la section « NDK : Faire communiquer notre programme avec du code en C++ ».


    Pays/territoire : Sfax, Tunisie

    0 commentaires:

    Enregistrer un commentaire

    Sauvegarder le lien

    Twitter Delicious Facebook Digg Stumbleupon Favorites More

    Recherche

    Copyright © ENIS Android Club