Formation Android

Vous aborderez dans ce cours les aspects avancés du développement d’applications Android portant sur la conception d’IHM ou l’utilisation de capteurs. Vous apprendrez à contrôler les fonctionnalités avancées d’Android Studio (Build Gradle, test) et à utiliser les librairies et services tiers utiles au développement.

Objectifs pédagogiques

  • Découvrir les outils de développement liés à Android Studio
  • Appréhender le développement des fonctionnalités avancées liées aux IHM, capteurs, services et threads
  • Intégrer des librairies tierces à un projet Android
  • Mettre au point, tester et optimiser une application Android

Travaux pratiques

Les travaux pratiques seront réalisés en Java.
PROGRAMME DE FORMATION

Introduction

  • Rappels des principes de base Android. Présentation du développement natif avec NDK. JNI.
  • Présentation des fonctionnalités avancés Android Studio (Instant Run, debug, profiling…).
  • Apports du dernier SDK. Les permissions à la demande.

Outils avancés de développement

  • Paramétrer le build avec Gradle. Comprendre les Build Variants.
  • Améliorer son code source avec Lint.
  • Mettre au point et profiler/monitorer une application.
  • Optimisation de l’APK avec ProGuard.

Travaux pratiques 
Utilisation des différents outils.

Création d’IHM avancées

  • Construction d’IHM avancées suivant les préconisations Material Design. Utilisation des styles.
  • Mécanismes des widgets.
  • Présentation OpenGL/ES.

Travaux pratiques 
Réalisation d’une activité complexe avec des fragments. Réalisation d’une application graphique.

Utilisation des capteurs

  • Mise en œuvre de capteurs. Accéléromètre, proximité, température, luminosité, baromètre, GPS…
  • Paramétrage dans le simulateur des capteurs.
  • Utilisation d’outils pour la simulation d’événements.

Travaux pratiques 
Réalisation d’une application intégrant différents capteurs.

ContentProvider et Services

  • Créer un ContentProvider. Cycle de vie des services. Arrière-plan et premier plan. Lier services et activités.
  • Utiliser des threads depuis un service. Utiliser des Intents. Définir des alarmes.

Travaux pratiques 
Réalisation d’un service et contrôle depuis une activité.

Tester une application Android

  • Présentation des outils adaptés aux différents types de tests. Rappels sur JUnit.
  • Simulation d’interactions utilisateur avec Espresso.
  • Paramétrage d’Android Studio pour les tests. Utilisation de Cloud Test Lab.
  • Présentation de Firebase Test Lab for Android.

Travaux pratiques 
Mise en œuvre de tests avec Espresso.

Librairies et services utiles pour le développement Android

  • Utiliser les Google Play Services.
  • Intégrer des bibliothèques tierces à un projet Android.
  • Simplifier l’accès à des ressources REST avec Retrofit.
  • Maîtriser le chargement des images avec Picasso.
  • L’injection de dépendances (Dagger).

Travaux pratiques 
Sélection et mise en place de librairies.