TP1 : Client Android
Vous allez mettre en place l'application en commençant par l'interface graphique en version factice.
Interface graphique
- Rien ne fonctionne.
- Les écrans affichent toujours les mêmes données.
- Toutes les actions « réussissent » tout le temps.
- Il n'y a aucun message d'erreur.
Un minimum de 6 commits de tailles comparables. Au moins un commit par écran.
Il ne doit pas y avoir un seul commit contenant tout alors que les autres sont vides. Les messages de commit doivent décrire l'avancement du projet dans un français correct (vérifié avec Word). (Instructions : ici & ici )
Ces points sont conditionnés à la remise d'au moins un commit toutes les deux séances de cours.
Écrans
L'application doit démarrer sur l'écran de connexion.
- Un champ pour le nom de l'utilisateur.
- Un champ pour le mot de passe, masqué.
- Un bouton « Connexion » qui amène à l'écran d'accueil.
- Un bouton « Inscription » qui mène à l'écran d'inscription.
L'écran d'inscription permet à l'utilisateur de créer un compte.
- Un champ pour le nom de l'utilisateur.
- Un champ pour le mot de passe, masqué.
- Un champ pour la confirmation du mot de passe, masqué.
- Un bouton « Inscription » qui mène à l'écran d'accueil (un utilisateur qui crée un compte est automatiquement connecté).
L'écran d'accueil affiche la liste des tâches de l'utilisateur.
- 1 point Il faut un bouton de type FAB (Floating Action Button) qui mène à l'écran de création d'une tâche.
- 1 point Un appui sur un élément de la liste mène à l'écran de consultation.
- 2 points Une liste : pour chaque élément d'information, vous pouvez choisir d'afficher du texte et/ou un élément graphique. Vous devez faire preuve d'imagination pour l'affichage. Chaque élément de la liste contient :
- le nom de la tâche
- le pourcentage d'avancement de la tâche
- le pourcentage du temps écoulé entre la date de création et la date d'échéance
- la date d'échéance
Votre écran doit montrer une liste d'au moins 200 éléments codés en dur avec un nom, une date et des pourcentages de votre choix.
L'écran de création permet de créer une tâche qui s'ajoutera dans la liste des tâches de l'utilisateur.
- Un champ pour le nom de la tâche.
- Un moyen d'entrer la date d'échéance de la tâche.
- Un bouton d'ajout qui mène à l'écran d'accueil.
L'écran de consultation permet de voir le nom et la date d'échéance de la tâche. Elle permet aussi de changer son pourcentage d'avancement.
- 1 point On y voit :
- le nom de la tâche
- la date d'échéance
- le pourcentage d'avancement
- le pourcentage du temps écoulé depuis la création de la tâche
- 2 points Il y a un moyen pour modifier le pourcentage d'avancement.
Les informations affichées sont codées en dur en attendant le TP2.
Il permet d'accéder rapidement à tous les écrans principaux :
- 1 point Le tiroir est présent dans tous les écrans SAUF inscription et connexion. Le nom de l'utilisateur courant est affiché (codé en dur). Il y a les options Accueil, Ajout de tâche et Déconnexion.
- 2 points Le tiroir fonctionne dans tous les écrans (SAUF inscription et connexion). « Accueil » amène à l'écran d'accueil, « Ajout de tâche » amène à l'écran de création et « Déconnexion » amène à l'écran de connexion.
- 1 point Il y a l'icône « hamburger » dans la barre supérieure qui ouvre le tiroir.
Ajoutez un logo personnalisé à votre application. Le choix vous appartient, mais le logo doit être libre de droits.
Notation négative ! Votre projet doit être lisible et fonctionnel en mode portrait ET paysage pour chaque écran. Vous perdez 1 point pour chaque écran où un élément n'est pas accessible ou fonctionnel dans l'un ou l'autre des modes (portrait ou paysage).
Votre application doit fonctionner sans plantage et correctement. Ce pointage fonctionne en négatif. Si l'application fonctionne correctement en tout temps, vous conservez votre note. Dans le cas contraire, vous perdez des points dans la limite maximale de 4. Essayez votre application sur un téléphone 5 pouces (Pixel 6, 7, 8 ou 9) en mode portrait.
- Plantage de l'application -1 point
- Interface illisible -1 point
- Informations affichées incohérentes -1 point
- Éléments d'interface non traduits -1 point
- Écran cassé en mode paysage -1 point
- Autre cas ...