
Introduction Ă Android
Mise en place
- télécharger et installer Android Studio : https://developer.android.com/studio/
SystĂšmes dâexploitation :
Android est présent sous mobile, dans les montres connectées, les tablettes, les smart TV, les voitures (Android auto et CarPlay).
Architecture :
Le Kernel Linux tout en bas sâoccupe de la gestion de lâĂ©nergie du tĂ©lĂ©phone, des driversâŠ
> La couche au-dessus hardware abstraction layer permet de ne pas avoir Ă spĂ©cifier le modĂšle de lâappareil.
> Les couches suivantes sont Android Runtime (machine virtuelle) && les librairies natives (C/C++)
> La couche qui nous concerne est le framework Java API (interface de programmation, SDK pour software development kit)
> En haut du schĂ©ma se trouvent les applications (email, calendrier, camĂ©raâŠ).
JetPack :
Câest une suite de bibliothĂšques qui permet aux dĂ©veloppeurs de suivre les bonnes pratiques, de rĂ©duire le code rĂ©current et d'Ă©crire du code qui fonctionne de maniĂšre cohĂ©rente sur toutes les versions d'Android et sur tous les appareils.
Versions dâAndroid :
- passage à AndroidX (amélioration majeure de la bibliothÚque de support Android d'origine, qui n'est plus conservée)
- version actuelle du SDK : 13 (14 en bĂȘta)
- associĂ©e Ă la version 33 de lâAPI (un entier qui incrĂ©mente Ă chaque version du SDK)
- version minimum du sdk : gĂ©nĂ©ralement API 21-24 (âanciennetĂ©â)
BP : on Ă©vite lâobsolescence programmĂ©e en essayant de garder une bonne anciennetĂ©.
Compilation dâune application :
En APK (Android Package Kit) [désuet]
Dâune part, il y a le module application, avec le code source, les ressources et autres fichiers. Dâautre part, il y a les dĂ©pendances, avec les codes sources et les ressources de toutes les librairies.
Les codes sources sont compilés et des fichiers DEX (Dalvik Executable) sont créés. Les ressources sont compilées à part.
A lâaide dâune clĂ© (identifiant unique au projet), un exĂ©cutable .apk est créé : il peut ĂȘtre directement utilisĂ© sur un mobile.
En AAB (Android App Bundle)
Format recommandĂ© par Google pour remplacer lâAPK, il nĂ©cessite de passer par un store pour ĂȘtre installer sur un mobile (F-Droid est gratuit, par exemple).
Hello World
Projet GitHub : https://github.com/LSarribouette/MumblingInKotlin
Dans Android Studio,
- créer un nouveau projet > choisir le template empty activity :
- Name : MumblingInKotlin
- Package name : com.lsarribouette.mumblinginkotlin
- Language : Kotlin
- Minimum SDK : API 24: Android 7.0 (Nougat)
(la plus ancienne possible, ici API 24 Ă cause des SVG)
âčïžLe format SVG dĂ©crit les images non pas avec des pixels mais avec des formules mathĂ©matiques.âčïžSelon le minimum SDK sĂ©lectionnĂ©, le pourcentage dâappareils actifs compatibles est donnĂ©e. Un appareil est considĂ©rĂ© actif sâil se connecte au moins une fois par mois aux services Google.
- ajouter un appareil, ici virtuel, depuis le Device Manager (téléphone avec un petit Android)
> Virtual > create device
> Select Hardware : Pixel 6 Pro
> System Image : Tiramisu (33) (télécharger au besoin)
> Finish
- lancer lâapplication : flĂšche verte
On voit lâapplication qui sâouvre sur le mobile et affiche âHello Worldâ.
