1. Présentation
Android Studio est un environnement de développement pour développer des applications Android. Il est basé sur IntelliJ.
Android Studio permet principalement d’éditer les fichiers Java (ou Kotlin) et les fichiers de configuration d’une application Android.
Il propose entre autres des outils pour gérer le développement d’applications multilingues et permet de visualiser la mise en page des écrans sur des écrans de résolutions variées simultanément.
Android est un système d’exploitation mobile basé sur le noyau Linux et développé actuellement par Google.
Les différents kits de développement sont :
-
l’Android NDK (Android Native Development Kit) est une API du système d’exploitation Android permettant de développer directement dans le langage C/C++ du matériel cible, par opposition au Android SDK qui est une abstraction en bytecode Java, indépendante du matériel.
-
l’Android SDK est un ensemble complet d’outils de développement (pour Linux, MAC OS ou Windows). Il inclut un débogueur, des bibliothèques logicielles, un émulateur basé sur QEMU, de la documentation, des exemples de code et des tutoriaux.
L'ADB (Android Debug Bridge) est un outil inclus dans le package Android SDK. Il se compose d’un programme client et d’un programme serveur communicant entre eux et qui permet :
-
la copie de fichier ;
-
l’accès à la console Android ;
-
la sauvegarde de la mémoire ROM ;
-
l’installation de logiciel.
Pour développer des applications Android, il faut au moins disposer du Android SDK et du kit de développement Java (JDK). Pour faciliter le développement, il est conseillé d’utiliser un EDI/IDE (Integrated Development Environment) comme Android Studio.
Ces outils sont disponibles aussi bien sous Linux que sous Windows et Mac OS. Les applications Android étant exécutées par une machine virtuelle, il n’y a pas d’avantages particuliers à développer sur un système plutôt qu’un autre …
2. Installation Android 4.1 (Ubuntu 20.04)
→ Démarrer le logiciel de gestion des applications pour Ubuntu
→ Rechercher l’application Android Studio
→ Installer Android Studio
→ Démarrer Android Studio pour finaliser l’installation
Le processus d’installation étape par étape :
L’écran de démarrage d’Android Studio :
3. SDK Manager
Le SDK Android est constitué de paquets modulaires qui peuvent être téléchargés séparément au moyen de l’outil Android SDK Manager. Cet outil est particulièrement pratique lorsqu’il est nécessaire de faire une mise à jour liée à une évolution du niveau d’API. Plusieurs niveaux d’API peuvent cohabiter.
→ Exemple :
4. Installation d’un périphérique Android
Il faut préalablement passer le smartphone ou la tablette en mode développeur (Paramètres → A propos du téléphone → Numéro de build) puis activer le débugage USB (Paramètres → Options pour les développeurs).
Ensuite, il faut relier le smartphone ou la tablette sur un port USB de la machine de développement et vérifier qu’il est détecté par le système :
Exemple pour un smartphone Acer :
$ dmesg ... [72893.663574] usb 3-9.4.2: New USB device found, idVendor=0502, idProduct=3472 [72893.663581] usb 3-9.4.2: New USB device strings: Mfr=2, Product=3, SerialNumber=4 [72893.663584] usb 3-9.4.2: Product: MT65xx Android Phone [72893.663587] usb 3-9.4.2: Manufacturer: MediaTek [72893.663589] usb 3-9.4.2: SerialNumber: AAEEQCBQAYRCRWDQ [72893.664509] scsi14 : usb-storage 3-9.4.2:1.0 [72894.660646] scsi 14:0:0:0: Direct-Access Linux File-CD Gadget 0000 PQ: 0 ANSI: 2 [72894.660945] scsi 14:0:0:1: Direct-Access Linux File-CD Gadget 0000 PQ: 0 ANSI: 2 [72894.662178] sd 14:0:0:0: Attached scsi generic sg10 type 0 [72894.662552] sd 14:0:0:1: Attached scsi generic sg11 type 0 [72894.663606] sd 14:0:0:0: [sdj] Attached SCSI removable disk [72894.663818] sd 14:0:0:1: [sdk] Attached SCSI removable disk $ lsusb ... Bus 003 Device 016: ID 0502:3472 Acer, Inc.
Sous Linux, il est probablement nécessaire de créer un fichier de règles udev qui contient une configuration USB pour chaque type de périphérique réel. En tant que root, créer le fchier /etc/udev/rules.d/51-android.rules
et y inscrire la ligne suivante (en précisant en hexadécimal votre idVendor) :
$ sudo vim /etc/udev/rules.d/51-android.rules SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
Brancher le téléphone et vérifer qu’il est reconnu :
$ ~/Android/Sdk/platform-tools/adb devices List of devices attached AAEEQCBQAYRCRWDQ device
Exemple pour une tablette Samsung :
$ dmesg ... [603597.410078] usb 1-5: new high-speed USB device number 51 using xhci_hcd [603597.559403] usb 1-5: New USB device found, idVendor=04e8, idProduct=6860 [603597.559409] usb 1-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [603597.559413] usb 1-5: Product: SAMSUNG_Android [603597.559415] usb 1-5: Manufacturer: SAMSUNG [603597.559418] usb 1-5: SerialNumber: d95f698401ba0ee8 [603597.561135] cdc_acm 1-5:1.1: ttyACM0: USB ACM device $ lsusb ... Bus 001 Device 051: ID 04e8:6860 Samsung Electronics Co., Ltd Galaxy (MTP)
Sous Linux, il est probablement nécessaire de créer un fichier de règles udev qui contient une configuration USB pour chaque type de périphérique réel. En tant que root, créer le fchier /etc/udev/rules.d/51-android.rules
et y inscrire la ligne suivante (en précisant en hexadécimal votre idVendor) :
$ sudo vim /etc/udev/rules.d/51-android.rules SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666"
Brancher la tablette et vérifer qu’il est reconnu :
$ ~/Android/Sdk/platform-tools/adb devices * daemon not running; starting now at tcp:5037 * daemon started successfully List of devices attached d95f698401ba0ee8 device
L’appareil apparaîtra alors dans Android Studio :
La première fois que l’appareil sera détecté, une autorisation de débogage USB sera demandée : |
5. Test : premier projet
Il suffit maintenant de cliquer sur la flèche Run app
:
Pour arrêter l’application :