Vous êtes sur la page 1sur 39

Introduction au

développement
natif avec Android
Mme Mounira Zouaghi
Qu´est ce que Android

En faisant une petite recherche sur Internet essayer de répondre aux


questions suivantes:
• C'est quoi Android?
• Supporté par qui ?
• Quand (les dates les plus importantes)
• Comment on développe avec Android?
• Si non (si ce n´est pas Android quel autre technologies...)
Android (1)

Android est le système d'exploitation de Google se basant sur le noyau


Linux
Lancé en 2007 sur les smartphones et les tablettes puis généralisés pour
les autres objets connectés , télévisions voitures, smart Watch...

Mars 2021 Android


occupe presque 77% du
marché
Développement Android

Pour développer des applications Android, on utilise les langages java ou


kotlin
EDI le plus utilisée est Android Studio avec SDKAndroid
SDK Android

Le kit de développement d'Android est un ensemble complet d'outils de


développement.

Il inclut un débogueur, des bibliothèques logicielles, un émulateur basé


sur QEMU, de la documentation, des exemples de code et des tutoriels.
sur le pc, le sdk est stocké sur
C:\Users\DELL\AppData\Local\Android\Sdk
OS Android
La dernière version (version beta)
https://apilevels.com/
Un API est le SDK API Level
Les API Android La dernière API est level 32
Systèmes concurrents: IOS

APK = Android
Application Package

IPA = iPhone
Application Archive
Le Développement android native permet de
developper des applications pour le OS Android
Les langages utilises sont java, kotlin
Developpement Environnement de Développement: Android Studio + sdk
android
Android Natif
L´architecture de
l´application Android
Jetpack android
Jetpack comprend une collection de bibliothèques Android qui intègrent les
meilleures pratiques et offrent une rétrocompatibilité dans vos applications
Android.
Les bibliothèques Jetpack peuvent être utilisées seules ou en combinaison
pour répondre à différents besoins dans vos applications.

❑ WorkManager pour vos besoins de planification en arrière-plan.


❑ ROOM pour la persistance du stockage des données.
❑ Navigation pour gérer le flux de navigation de votre application.
❑ CameraX pour les besoins de votre application appareil photo.
❑ Compose pour les interfaces graphiques
Jetpack Compose

Jetpack Compose est une boîte à outils moderne conçue pour simplifier le
développement de l'interface utilisateur.
Il combine un modèle de programmation réactif avec la concision et la
facilité d'utilisation du langage de programmation Kotlin.
Il est entièrement déclaratif, ce qui signifie que vous décrivez votre interface
utilisateur en appelant une série de fonctions qui transforment les données en
une hiérarchie d'interface utilisateur.
Lorsque les données sous-jacentes changent, le framework réexécute
automatiquement ces fonctions, mettant à jour la hiérarchie de l'interface
utilisateur pour vous.
Projet Composable
Les fonctions Composable
❑ Une a p p l i c a t i o n Compose est composée de f onct ions composables
❑ uniquemen t des f o n c t ions r éguliè res marquées avec @Composable,
qui peuvent appeler d ' a u t r e s f onct ions composables.
❑ Une f o n c t ion est t o u t ce don t vous avez besoin pour créer un
nouveau composant d ' i n t e r f a c e u t i l i s a t e u r .
❑ L'annotation indique à Compose d ' a j o u t e r un support spécial à l a
f onct ion pour mettre à j o u r e t maintenir vot re i n t e r f a c e
u t i l i s a t e u r au f i l du temps.
❑ Compose vous permet de s t r u c t u r e r votre code en p e t i t s morceaux.
❑ Les f onct ions composables sont souvent appelées "composables" en
abrégé.
Exemple

Un composable fait
appel a un autre
composable
L´activité ComponentActivity
Fonctions
Composable
Text element
Fonction composable
Affichage de Preview

Prévisualisez votre fonction dans Android Studio


Android Studio vous permet de prévisualiser vos fonctions
composables dans l'IDE, au lieu d'installer l'application sur un
appareil ou un émulateur Android.
Click to add text
Layouts

Les éléments de l'interface


utilisateur sont
hiérarchiques, avec des
éléments contenus dans
d'autres éléments. Dans
Compose, vous créez une
hiérarchie d'interface
utilisateur en appelant des
fonctions composables à
partir d'autres fonctions
composables.
Affichage de 2 Text

Ce code crée deux éléments de texte dans la vue de contenu.


Cependant, comme nous n'avons fourni aucune information sur la façon
de les organiser, les éléments de texte sont dessinés les uns sur les
autres, ce qui rend le texte illisible.
Column

La f o n c t i o n Colonne permet d' organiser l e s éléments vert icalem e nt .


Ajouter une image
Configurer le Layout avec le Modifier

Le Modifier permet de modifier l a t a i l l e , l a d i s p o s i t i o n ,


l'apparence du composable ou d ' a j o u t e r des i n t e r a c t i o n s de haut
niveau, comme rendre un élément c l i q u a b l e .
Vous pouvez l e s enchaîner pour créer des composables plus
riches.
Le Modif ier est un paramètre de Composable
Exemple de Modifier
Material Design

Jetpack Compose f o u r n i t une implémentation de Mat erial Design et de


ses éléments d ' i n t e r f a c e u t i l i s a t e u r prêts à l ' e m p l o i .
On peut améliorer l'apparence de notre composable MessageCard en
u t i l i s a n t l e s t y l e Mat erial Design.
Une a c t i v i t é vide génère un thème par défaut pour votre p ro jet qui
vous permet de personnaliser MaterialTheme, l e théme prend l e nom
de votre a p p l i c a t i o n
MyApplicationTheme
Les couleurs

Le s t y l e avec l e s couleurs du thème est f a c i l e e t on peut


u t i l i s e r l e s valeurs du thème part out où une couleur est
nécessaire.
Exemples
Typographie

Des styles typographiques existent avec le MaterialTheme


Forme(Shapes)

Avec les shapes, on peut ajouter la touche finale et du padding á notre


interface
Listes et
animations
Les listes

Les listes sont partout dans les applications


Il devient plus facile avec Compose d´ajouter des listes et des animations sur
les listes .
Pour les listes, on utilise LazyColumn
et LazyRow
LazyColumn et LazyRow rendent les
Éléments visibles sur l'écran. Efficace pour les longues listes
Exemple. LazyColumn
Exemple. LazyColumn
Content Padding

Vous aimerez peut-être aussi