Projet-Equipe-14-Pi-A5-HandicApp

Handic-App

Handic'App est un projet réalisé pour Microsoft. L'objectif est de créer une application qui centralise les différents services cognitifs Azure existant afin de simplifier leur accessibilité. Ces services sont un réel soutien pour les personnes handicapées.

Pour réaliser cette application, on a décidé d'utiliser le langage React-Native. React-Native est un framework java-script populaire pour réaliser des applications cross-plateformes (application disponible sur IOS et Android).

React-Native est un langage bien adapté pour la programmation orienté objet. En effet chaque élément sur l'application (bouton,image,barre de saisie ...) fait l'objet d'un fichier de code séparé qui peut être réutilisé ensuite dans n'importe quel écran de l'application. Ci-dessous, voici la structure générale d'un fichier de code en React-Native:

Structure d'un fichier en React-Native

Tout d'abord, il faut importer les bibliothèques/fonctions dont on a besoin import

Ensuite vient le coeur du fichier, ici nous avons une classe mais on peut également décider de créer une fonction. Une classe en react native est composé de -constructeurs -props -render (obligatoire) -return (pour afficher quelque chose à l'écran, il faut placer son code du return entre des balises )

image

Ensuite, on peut décider de créer un style pour designer les composants de la classe/fonction image

Enfin, il faut exporter la classe afin de pouvoir l'utiliser ailleurs dans l'application (Ici on exporte la classe avec (withNavigation car notre classe renvoie vers une autre, mais on peut utiliser simplement "export default" s'il n'ya pas de renvoie vers un autre objet)

image

Ci-dessous, des liens vers la documentation officiel de React-Native pour débuter avec le développement mobile:

Learn the basics: https://reactnative.dev/docs/tutorial

Tutoriel complet: https://reactnative.dev/docs/getting-started

Structure de l'application

image

Les dossiers .expo et .vscode sont générés automatiquement à la création d'une application React-Native et sert au bon fonctionnement de cette dernière

Assets contient les images affichés dans l'application

image

Components regroupe les différents objets (boutton, barre de recherche ...)

image

Ci-dessous, le rendu en front des différents components:

-Affichage:

image

-Azure:

image

-Creation:

image

-Dictaphone:

image

-Localisation:

image

-Parametre:

image

-Recherche:

image

-Scanner:

image

-Son:

image

-Visionneuse:

image

Navigator est le fichier qui permet la navigation entre les différents écrans de l'application

image

node_modules, comme son nom l'indique, contient les différents modules de l'application. C'est un fichier très volumineux.

Screen contient les différents écrans de l'application. Ces écrans sont composés d'objets du dossier Components

image

Ci-dessous, les différents écrans de l'application:

-Login:

image

-Inscription:

image

-mdp_oublie:

image

-Menu:

image

Chacun des cinq boutons principaux du menun renvoie vers une page pour accéder au service cognitif associé. Ces pages ont la forme ci-dessous:

image

App.js est le fichier principal. C'est l'application à proprement parlé

image

Paradoxalement, il est très simple car tout est compacté avant dans les différents fichiers. (C'est l'avantage de la POO) image

Les derniers dossiers sont aussi des dossiers générés automatiquement à la création de l'application

image

Démarrer l'application

Tout d'abord, il faut ouvrir un terminal sur Visual Studio et se placer dans le dossier où se trouve l'application grâce à la commande "cd". Ensuite il faut entrer la commande "npm install" afin d'installer les différents nodes modules nécessaires au lancement de l'application ainsi que : "npm install --global expo-cli" afin d'installer expo. Ensuite il faut entrer la commande "npm start" afin de lancer le programme dans un serveur local

image

On arrive alors sur la page suivante, d'ici on peut décider de lancer l'application sur un serveur web local en cliquant sur "Run in web browser", sinon peut scanner le QR code avec l'application Expo installé sur votre téléphone afin de pouvoir tester le programme directement sur mobile. lien de téléchergaent de Expo:

-Android: https://play.google.com/store/apps/details?id=host.exp.exponent&hl=en&gl=US

-IOS: https://apps.apple.com/us/app/expo-go/id982107779

image