Objectifs pédagogiques
- Développer avec Kotlin des applications mobiles pour les plateformes Android.
Niveau requis
Connaître un langage de programmation comme Java (pour bien connaître Kotlin).
Public concerné
Programmeurs Android, développeurs et chefs de projets.
Programme
Introduction à Android
- Historique d'Android et Linux
- Architecture et philosophie d'Android
- Possibilités du système Android
- Fonctionnement des versions d'API
- Les langages disponibles, SDK et NDK
Rappels sur Kotlin
- Syntaxe et concepts de base
- Typage, instructions et classes
- Généricité dans Kotlin
- Les lambda expressions
- Les collections
- La gestion des exceptions
Android Studio et Kotlin
- Prise en main de l'environnement de développement Android Studio
- Mise en oeuvre de Kotlin avec Android Studio
- Etude d'un code Kotlin, création d'un projet dans Android Studio
Introduction au développement Android
- Etapes du développement d'une application Android
- Architecture d'un projet Android sous Android Studio
- Développement et test
- Mise en oeuvre du debug avec :
- L'émulateur
- Un "Device"
- Signer et déployer une application Android
Grands concepts d'Android
- Concepts de base
- Les classes importantes
- Les "Activity"
- Les "Intent"
- Les "Fragment"
- Le fichier manifest de l'application
- Processus et "Threads"
Interfaces graphiques sous Android
- Positionnement des éléments sur un écran
- Les "ViewGroup" et les "View"
- Présentation des "Layout"
- Composants graphiques de base
- Comment gérer les évènements
- Créer des vues via les éléments XML et en code
- Les menus et "ActionBar"
Gestion des données
- Accès au File System d'Android par code
- Lecture / écriture sur fichiers
- Accès aux bases de données (SQLite)
- Les stockages internes et externes, et cartes SD
- Accès en lecture et/ou écriture au système de fichiers
- La gestion des préférences
Les fournisseurs de contenu (Content Providers)
- Fondamentaux des fournisseurs de contenu
- Création et utilisation d'un fournisseur de contenu
Les récepteurs d'évènement (Broadcast Receivers)
- Les "Broadcasters"
- Déclarer et enregistrer les récepteurs d'évènement
- Créer un récepteur d'évènement
- Permissions
Communication
- Utilisation des sockets, communication
- Utiliser des services Web
- Utilisation de http, communication
- Accès à des services via REST
- Gestion des données en JSON
Notions avancées
- Gestion asynchrone de tâches
- Gérer les "Threads"
- Les "Intents", base de la communication sous Android
- Les services, mise en oeuvre
- Utiliser les API Google (Maps...)
- La géolocalisation
- Gestion des notifications
- Gestion des SMS
- Différents types de capteur
Fonctionnalités multimédia
- Gestion de l'audio et du device photo et vidéo
- Exploiter le multimédia dans une application
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)