UE Mobilité

Introduction : 1h30 en salle de cours (Mayte, Thierry, Philippe) puis 1h30 en salle de TP (éventuellement en autonomie ?)

  • Écosystème Android : structure, composants, activités, cycle (process) de développment, debuggage, tests, émulateur

  • Déroulement de l'UE

  • Découverte d'Android Studio, paramétrage (sdk tools, platform, cible)

IHM Basique : création d'une IHM et association de quelques interactions : 3h en salle TP

  • création d'une activité et ajouts d'éléments graphiques : par l'éditeur puis via le xml si besoin

  • association d'actions interactives : en java (dynamique) ou via l'éditeur (statique)

  • récupération en java des éléments de l'IHM créés par l'éditeur (pour agir dessus : y mettre des listeners, les activer/désactiver, les remplir; les faire apparaître/disparaître)

  • création et utilisation d'un menu (via fichier xml dédié)

  • c'est le moment d'introduire le cycle de vie d'une activité (création et destruction, et pause/reprise ?)

Persistance : stockage / lecture des données : 3h en salle TP

  • lecture dans un fichier (puis plus tard dans une base de données) de con tenu à visualiser dans l'interface

  • stockage du nouveau contenu après interaction de l'utilisateur

  • c'est le moment de commencer à parler concrètement du manifest

Activité et cycle de vie : communications entre activités : 6h en salle TP

  • faire communiquer deux "Activity" différentes en utilisant le mécanisme des Intents implicites

    • en faisant passer des données à une application déjà installée sur le terminal android

  • faire communiquer deux "Activity" différentes en utilisant le mécanisme des Intents explicites

    • en utilisant les champs extra pour transmettre des données

    • en utilisant des données "parcelable"

  • faire communiquer deux "Activity" (d'applications différentes réalisées par les élèves) différentes en utilisant le mécanisme des Intents implicites

  • c'est le moment de parler en détail du cycle de vie d'une activité

partie : gérer les langues

  • Différencier l'affichage des intitulés en fonction de la langue du téléphone à l'aide de fichiers de ressources

partie : autres exemples de communication par Intents

Partie Persistance des données

  • En essayant de récupérer des données d'une application à l'autre

partie : faire des interfaces avec des fragments

  • De façon statique : à l'aide de layouts (layout-land et layout-port) (passage paysage / portrait)

  • De façon dynamique : en remplaçant un fragment par un autre (pour s'adapter à différents tailles d'écrans)

  • Faire communiquer deux fragments par échange de données d'un fragment à un autre

Utilisation des capteurs : 3h en salle de TP

  • Accéléromètre, GPS, magnétomètre, capteur de proximité, capteur de luminosité, caméras, ...

    • réaliser une boussole (à réutiliser pour la cartographie ?)

    • réaliser un niveau à bulle

    • afficher leur position GPS (à réutiliser pour la cartographie !)

Cartographie : manipuler des cartes et du contenu associé : 9h en salle TP

  • Différents niveau de précision pour la visualisation

  • Visualisation d'un point particulier de la carte, au bon niveau de zoom

  • Ajout d'éléments sur une carte

  • Interaction avec ces éléments

  • navigation / repérage de points avec un GPS

  • gestions d'une base de données

partie : réseau et internet

  • via sockets TCP : pour communiquer avec un serveur sur PC, pour faire serveur pour un PC

  • via bluetooth : pour communiquer avec un PC ou directement avec un autre téléphone ou autre périphérique bluetooth

  • via les webservices

Réalité Augmentée : pas dans l'UE de transition (peut-être un tout petit peu quand l'UE sera en UE TAF ?)

  • Superposer des éléments (3D) au flux vidéo en provenance de la caméra et affiché à l'écran