
- Durée
- 4 jours
- Niveau
- Avancé
- Modalités
- Présentiel / Distanciel
Description de la formation Android Embarque
Android est un système d’exploitation mobile reposant sur un noyau Linux dont le code est open source. Cela permet ainsi à n’importe quel développeur ou développeuse de construire un système personnalisé se basant sur celui-ci et de le déployer sur un système embarqué.

Objectifs pédagogiques
Cette formation Android embarqué vous permettra de :
- Comprendre l'architecture bas niveau d'Android
- Compiler et démarrer un système Android
- Savoir porter Android vers un nouveau matériel
- Savoir développer un système Android (accès au hardware spécifique via les applications Android, personnalisation du système de fichier, débogage)
Programme
Contenu du cours
Compilation et démarrage d'Android
Introduction à AndroidHistorique: les différentes versionsLes différents acteurs et leur implication
Détails sur l'architecture d'AndroidMise en place de l’environnement
Installation des outils nécessaires à la compilation
Récupération du code source (si la bande passante est insuffisante, un répertoire .repo prêt à l'emploi sera fourni)
Prise en main des outils spécifiques d'Android
Compilation du premier système de fichiers racine pour l'émulateur
L'utilisation des outils repo, git et gerrit pour accéder aux sources
Comment s'y retrouver dans le code de base
Comment compiler Android (outils, cible, etc …)
Propriétés du noyau Linux avec focus sur les caractéristiques utiles aux systèmes embarqués
L'interface utilisateur du noyau (Kernel user interface)
Récupération des sources
Comprendre les différentes versions de noyaux de Linux
Application de la commande patchCompilation et démarrage d'un noyau Android
Utilisation de l'émulateur d'Android
Extraire les patches du noyau Android
Compilation et démarrage d'un noyau Android
Portage d'Android vers de nouvelle cartes
Modification du noyau Linux pour AndroidLes changements majeurs ajoutés par GoogleLes fonctionnalités qui ont été ajouté au noyau
Les changements sur les driversLe support d'une nouvelle carte
Les étapes nécessaires pour porter Android sur une carte personnalisée
Démarrage d'Android sur une nouvelle carte
Résolution des différents problèmes courants lors de cette opération
Les différents ajustements nécessaires pour obtenir un système opérationnel (affichage correct, écran tactile, boutons, molettes, etc)
Exemples de bootloader
Les spécifications fastboot d'Android
Le développement de drivers pour Android
Développement et débogage avec ADB (Android Debug Bridge) Utiliser ADB pour déboguerPrésentation et installationLes options les plus intéressantesUtilisation d’ADB
Les commandes disponibles: transferts de fichiers, installation de paquetage, exécution de commandes distantes, accès aux logs , … Ajustements d'ADB pour une carte personnalisée
Apprendre à lire les journaux système
L'accès au Shell de la carte
Envoyer/recevoir des fichiers
La structure du fichier .initrcLa construction d'un système AndroidLes concepts introduits dans la construction d'un système
L'architecture des Makefiles
Variables et fonctions disponibles
Les différentes étapes de la compilation
Ajouter un nouveau périphérique à la construction du système Personnalisation du système
Ajouter un nouveau device à la construction du système
Personnalisation de l'information "A Propos", Build ID, Les écrans d'accueil et de boot du système , …
Les spécifiés du système de compilation et de la bibliothèque C (Bionic)
Création d’une bibliothèque externe pour contrôler un lanceur de missile USB
Ajout de cette bibliothèque au système par défaut d'Android
Les différents composants impliqués dans le runtime Android, de la machine virtuelle au framework des medias : StageFright, Flingers, Dalvik, …
Comment l'abstraction matérielle est implémentée sous AndroidLes applications et le Framework AndroidPrésentation des services, fournisseurs de contenu et applications disponibles en standard
Structure d'un service, d'un fournisseur de contenu
Comment accéder à une bibliothèque native à partir d'une application via l'API JNI (Java Native Interface)Développement de l'interface Java d'une bibliothèque native
Implémentation de l'interface Java pour utiliser la librairie intégrée précédemment
Développement d'applications AndroidLe cycle de vie d'une applicationLes différents composants d'une application
Comment accéder aux services
Comment utiliser, accéder et administrer les ressources
Comment les paquetages apk sont construits et ce qu'ils contiennentEcriture d'une application avec le SDK
Apprendre à écrire et distribuer une application utilisant le SDK d'Android et son API
Ecriture d'une application Android contrôlant le lanceur de requêtes USB
Apprendre à accéder aux fournisseurs de contenus d'Android
Travaux pratiques
Les travaux pratiques occupent une place prépondérante lors de cette formation. Ils sont savamment imbriqués avec les parties théoriques et une partie importante de l’apprentissage est réalisée via les travaux pratiques.
Chaque participant pourra tester les travaux pratiques sur une carte ARM Cortex-A mise à disposition dans le cadre de la formation.
Programme mis à jour le 12/02/2026
Public concerné
Cette formation Android embarqué est destinée aux développeurs et développeuse système et aux chefs de projet.

Prérequis
Avoir une bonne connaissance des commandes Unix ou Linux.
Avoir une bonne connaissance du C et des bases en Java.
J’évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Faire le testFinancement
Cette formation peut être prise en charge par votre entreprise, seule ou avec l’appui de son opérateur de compétences. Nous fournissons le devis et les pièces attendues par l’OPCO.
Formations liées
- Développement iOS avancé et IARéf. UPHA23 joursAvancéProchaine session : 23 nov.2 090 €
- Qt : Conception d’interfaces graphiques en C++ avec QtRéf. DCQT4 joursIntermédiaireProchaine session : 17 nov.2 490 €
- Objective C, développement iOS avancé (iPhone/iPad)Réf. UPHA4 joursAvancé
- React Native AvancéeRéf. RENA2 joursAvancéProchaine session : 22 oct.1 590 €