– Cours 3 –
Chapitre 3 : L’outil de développement Android Studio
Installation et configuration
Staff pédagogique
Nom Grade Faculté/Institut Adresse e-mail
Chaouche Ahmed-Chawki MCB Nouvelles Technologies ahmed.chaouche@univ-constantine2.dz
Etudiants concernés
Faculté/Institut Département Année Spécialité
Nouvelles Technologies IFA Licence 3 Technologie de l’Information (TI)
Nouvelles Technologies IFA Licence 3 Science de l’informatique (SCI)
Objectifs du cours 3
Installer et configurer l’outil de développement : Android Studio
Comprendre le cycle de développement d’une application Android
Créer et exécuter une première application Android
SDK
Android Studio regroupe la richesse de IntelliJ IDEA combinée avec les capacités qui sont nécessaires pour le
développement sous Android. Il permet de mettre rapidement en place de nouveaux projets sur le système
Android, pour créer une application d'interface utilisateur, ajouter des composants basés sur l'API Android,
déboguer vos applications en utilisant les outils du SDK de Android, et même d’exécuter vos applications sur
un appareil mobile ou sur un émulateur.
Android Studio intègre aussi le moteur Gradle, qui automatise les tâches et permet un développement simplifié.
Il nécessite également l’installation du Java Runtime Environment (JRE) pour que toutes ses fonctinnalités
soient opérationnnelles.
1.2. Installation du JDK
Android Studio nécessite le JDK installé de Java SE, en version 7 minimum. Sachant que Android n’a pas
besoin de toutes les packages du JDK, mais seuelement certains d’entres-eux :
Certains packages Java complètement implémentés dans Android dont java.io, java.net et
java.sql
Certains packages Java partiellement implémentés dans Android tels que java.lang, java.util et
javax.sql
Certains packages Java non implémentés dans Android tels que javax.swing,java.applet et
java.rmi
A partir du site officiel d’Oracle, voici la page de téléchargement de la version actuelle du JDK (8u181) :
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Remarque
Lors de l’installation de Android Studio, il faut choisir le chemin suivant :
D:\android\android-studio
Sachant que le paquet de Android Studio n’inclut pas Android SDK, donc après l’avoir installer, une fenêtre
de téléchargement du SDK sera lancée. Les paquets nécessaires du SDK, requierent au moins 10 Go de
téléchargement. De ce fait, le SDK compressé dans sdk.zip, sera fourni dans un DVD (ou un flash disk).
Remarque
Voici les étapes pour configurer Android SDK :
1) Décompressez sdk.zip dans le chemin : D:\android\android-sdk
2) Définir les chemins d’accès du JDK et de Androdi SDK (voir la section suivante).
Méthode 2 :
1) Dans Android Studio, cliquer sur l’icône de Project Structure ou aller à : File → Project Structure…
→ SDK Location.
2) La fenêtre suivante apparaîtra, permettant de modifier les chemins d’accès du JDK et de Android SDK de
Android.
Remarque :
Les applications Android peuvent être développés en Java via Android SDK ou directement en C/C++ via
Android NDK (Native Development Kit). Dans le 2ème cas, Android NDK doit être téléchargé et installé de
manière indépendante du Android SDK.
En effet, pour télécharger un paquet dans SDK Manager, il faut le sélectionner en cochant sur la case qui le
correspond, puis cliquer sur « Installer » pour installer ces paquets. Par défaut, SDK Manager propose de
mettre à jour un paquet si ce dernier devrait l’être.
Voici les principaux paquets qui sont offerts par Android SDK :
SDK tools, est l’outil nécessaire pour exécuter Android SDK, incluant les outils pour le
développement Android.
SDK build-tools est l’outil nécessaire pour la construction des applications Android.
SDK platform-tools, est utilisé pour prendre en charge les fonctionnalités de la plateforme Android
actuelle incluant l’outil adb (android debugging bridge) qui agit comme un pont pour communiquer
avec un émulateur ou un appareil mobile.
SDK platforms correspond aux différentes plateformes (versions) d’Android. Une plateforme, au
moins, doit être installée pour exécuter des applications Android, généralement c’est la dernière
version qui doit être installée.
System Image correspond aux images disque des émulateurs, qui serviront comme support de test
pour exécuter des applications Android.
Samples fournit quelques exemples de codes pour en savoir plus sur le développement Android.
2. Projet Android
Maintenant que la configuration de Android Studio est terminée, vous pouvez créer votre premier projet.
2.1. Création d’un nouveau projet Android
Dans Android Studio, pour créer un nouveau projet Android, il faut :
1) Cliquer sur : File → New → New Project…
2) Remplir les champs concernant le nom de l’application :
Application Name : LearnApp
Compagny Domain : iam.sci, ce qui donnera comme nom de package sci.iam.learnapp
Project location : D:\android\projects
3) Cocher "Phone and Tablet" et spécifier les plateformes Android avec lequel l'application sera compatible.
4) Android Studio propose plusieurs modèles prédéfinis, où il génèrera toutes les classes et les ressources
nécessaires à la création d’un écran graphique, qui est appelé "Activité". Pour notre projet, créer un écran
vide grâce à l'option "Empty Activity", car c'est mieux de commencer de zéro.
5) Enfin, il faut remplir les champs concernant le nom de l’activité comme suit :
Activity Name : LoginActivity qui est le nom de la classe qui étendra Activity. Il doit respecter la
convention de nommage CamelCase (Chaque mot doit commencer par une majuscule et le reste en
miniscules) suffixée par le type du contrôleur (Activity, Fragment ou View).
Layout Name : activity_login, qui est le nom de la vue associée à l'écran sous la forme d'un fichier
XML. La convention impose que ce nom soit en snake_case (tout en miniscules et séparé avec
des underscore) préfixé par le type du contrôleur.
Maintenant, le projet est créé avec une activité d’authentification vierge.
Un projet sous Android Studio est souvent composé de plusieurs modules, où chaque module peut être une
application à part entière ou une bibliothèque. Le premier module est nommé app par convention, contenant
toutes les sources de l'application Android organisées dans des sous-dossiers :
manifests : comporte essentiellement AndroidManifest.xml qui décrit la configuration de
l'application (titre, logo, ...).
java : regroupe les sources Java de l’application organisées dans des packages (classes, interfaces,
activités, …).
res : contient toutes les ressources que l'on utilise dans l’application (vues, images, couleurs, …).
Tous ces composants seront décrits et détaillés dans le chapitre 5.
Manifest
Fichiers java
Ressources organisées
(texte, …)
Gradle
Gradle
Comme Ant et Maven, Gradle est un gestionnaire puissant de dépendances vu comme un moteur entier de
production, permettant la construction du projet. Android Studio crée un script gradle (écrit en langage
"Groovy") pour chaque module (par exemple, build.gradle (Module:app) pour le module app) ainsi qu’un
script pour le projet entier (build.gradle (Project:LearnApp)) [3]. Dans le build.gradle de l’application,
on définit la version du SDK utilisée pour la compilation, la version minimale du SDK nécessaire pour faire
tourner l’application, la version et l’identifiant de l’application, etc.
2.3. Processus de développement d'une application
Pour générer et exécuter une application Android sur un appareil, il faut passer par les étapes
successives suivantes [4] :
Archivage (Packaging)
Toutes les ressources compilées et non compilées ainsi que les fichiers .dex sont rassemblés dans un fichier
archive .apk (Android package) par l’outil apkbuilder. Ce fichier, nommé généralement project-
debug.apk, n’est pas signé et ainsi ne pouvant être lancé qu’en mode Debug.
Signature
Pour être déployées et publiées, les applications doivent être signées par l'outil jarsigner qui permet de signer
le fichier .apk avec une clé. Ensuite, l'outil zipalign aligne les fichiers dans l’archive.apk afin de diminuer
l'utilisation de la mémoire lorsque l'application est exécutée sur un périphérique. Le fichier résultant s’appelle
project-release.apk.
Exécution
Désormais l’application peut être installée et exécutée sur n’importe quel périphérique. En effet, le déploiement
de l'application peut se faire sur un périphérique Android physique ou un émulateur, où les fichiers .dex sont
exécutés via la VM Dalvik. Ainsi, en comparant une application Android à une application Java classique, un
fichier .apk est vu comme un fichier .jar, les fichiers .dex comme des fichiers .class et la VM Dalvik
comme la JVM.
3. Exécution de l’application
L’application Android peut être exécutée sur un périphérique Android physique ou sur un périphérique
Android virtuel appelé émulateur :
Sous Android Studio, pour créer un nouvel émulateur fourni par, il faut :
1) Ouvrir le gestionnaire AVD en cliquant sur l’icône dans la barre d'outils ou allant au menu : Window
→ Android Virtual Device Manager,
2) Définir un nouveau périphérique virtuel Android (AVD pour Android Virtual Device) en appuyant sur le
bouton "New",
3) Choisir la configuration souhaitée pour le périphérique virtuel,
4) Enfin, appuyer sur le bouton "OK", pour créer le périphérique virtuel et afficher la configuration AVD
dans la liste des périphériques virtuels disponibles.
Lorsqu’on parle d‘émulateur Android, on pense aux images ARM fournies par Google. Cependant, cette
architecture n’est pas très adaptée au développement Android en terme de permformance. La situation s’est
bien améliorée ces dernières années avec Intel qui propose désormais des images optimisées pour ses
processeurs.
d'une quantité d'outils de développement. De plus, il est possible d’exécuter plusieurs instances de la même
application.
En 2016, avec son outil Genymotion Cloud, Genymotion est devenu l’un des premiers émulateurs cloud
Android permettant de déployer Android sur des machines virtuelles dans le cloud, il est ainsi possible d’y
accéder depuis n’importe quel navigateur. Cette solution modifie la chaîne de développement des apps Android
en facilitant le travail des développeurs et en améliorant l’expérience des utilisateurs.
Genymotion est payant, mais il est possible de télécharger une version gratuite qui ne contient pas un bon
nombre des fonctionnalités qui sont nécessaires aux développeurs. Actuellement, il est employé par plus de 5
millions de développeurs Android. Voici le lien de téléchargement de la version gratuite :
https://www.genymotion.com
Voici les prérequis de l’installation et de l’utilisation de Genymotion 2.12.1 :
OS : Microsoft Windows 7, 8 ou 10 (32/64 bit)
Processeur : 64 bit, avec la capacité VT-x (ou AMD-V), à active dans le BIOS
RAM : 2 Go
Espace disque : 400 Mo
Note
Il existe d’autres émulateurs tels que Bluestacks, Remix OS Player, et Droid4X.
Par exemple, pour intaller le driver du smartphone Samusng Galaxy S8, il faut suivre les étapes suivants :
1) Aller au site official de Samsung : http://www.samsung.com/us/support/downloads
2) Choisir le modèle de l’appareil (Samsung Galaxy S8) puis cliquer sur "Get Downloads",
3) Cliquer sur Downloads → USB (Driver) ver.x.x.xx.x → Download (EXE),
4) Installer le driver ensuite redémarrer le PC (souvent c’est necessaire).
x7
Débogage sans-fil
Sous Android Studio, il est possible d’exécuter une application sur un appareil via le Wi-Fi (sans utiliser
un câble USB pour relier l’appareil au PC). Voici les étapes à suivre :
1) Installer le plugin "ADB WIFI" [7] :
Aller à : File → Settings → Plugins → Browse repositories
Rechercher ADB WIFI, puis cliquer sur "Installer"
2) Connecter l’appareil au PC par câble USB (pour la première fois seulement)
3) Connecter l’appareil et le PC au même réseau Wi-Fi
4) Activer le plugin ADB WIFI :
Cliquer sur Tools → Android → ADB WIFI → ADB USB to WIFI
Applications d’arrière-plan
Ce type d’application se base sur des services exécutés en arrieère-plan. L’interaction avec l’application est
limitée en dehors de sa configuration. Par exemple : Alarme, Filtrage d’appels, réponse automatique aux SMS,
Economiseur d’énergie, ...
Widgets
Ce sont des composants visuels interactif que l’utilisateur peut ajouter à son écran d’accueil. Par exemple :
Horloge, prévisions météo, …
Liens utiles
Les étudiants peuvent consulter ces références pour approfondir leurs connaissances dans ce cours :
Configuration avec Gradle : https://rominirani.com/gradle-tutorial-part-6-android-studio-gradle-c828c5639bb
Processus de développement : https://github.com/dogriffiths/HeadFirstAndroid/wiki/How-Android-
Apps-are-Built-and-Run
Top 5 des émulateurs Android : http://appinformers.com/android-emulators-pc/13028/
Références
[1] «Installing the Eclipse Plugin,» Massachusetts Institute of Technology, 2017. [En ligne]. Available:
https://stuff.mit.edu/afs/sipb/project/android/docs/sdk/installing/installing-adt.html.
[2] developer.android.com, «Android Studio - The Official IDE for Android,» Septembre 2017. [En ligne].
Available: https://developer.android.com/studio/index.html.
[3] R. Dima, «Tutoriel Android sous Android Studio,» 6 Février 2017. [En ligne]. Available:
https://hal.archives-ouvertes.fr/cel-01241650v2/document.
[4] D. Griffiths, «How Android Apps are Built and Run,» 28 Janvier 2017. [En ligne]. Available:
https://github.com/dogriffiths/HeadFirstAndroid/wiki/How-Android-Apps-are-Built-and-Run.
[5] Nox Digital Entertainment Co., «L'émulateur Android parfait pour jouer aux jeux mobiles sur PC,»
2017. [En ligne]. Available: https://fr.bignox.com/.
[6] Genymobile, «Make better apps : Over 3000 Android configurations,» 2016. [En ligne]. Available:
https://www.genymotion.com/.
[7] S. Wichai, «ADB WIFI : Android Studio plugin for debug android app over Wi-Fi,» 6 Mai 2016. [En
ligne]. Available: https://plugins.jetbrains.com/plugin/7856-adb-wifi.