Mise à jour de 'Localisation des utilisateurs et utilisation'

master
Dorian HODIN 2 years ago
parent 3cad2d6f50
commit ff87816814

@ -27,8 +27,14 @@ Sur IOS, la démarche est la même que celle pour Android, il faut seuelement mo
Une fois ces lignes ajoutées, l'application peut demander à son utlisateur d'accorder l'accès à la localisation de son appareil.
## Envoie des données sur un serveur Web
## Liste des utilisateurs proches
### PHP
Une fois ces coordonnées GPS récupérées, nous les envoyons sur un algorithme en PHP qui tourne sur un server Web. Cet algorithme permet de récuperer les données du code Flutter et de les envoyés sur PhpMyAdmin, un service web permettant de créer des bases de données et de les utiliser grâce à des scripts PHP. Sur cette base de données, nous envoyons l'ID de l'utilisateur qui a envoyé ses coordonnées, sa latitude et sa longitude. Une fois ces trois données stockées, un autre script PHP, executé par une fonction Flutter getData(), récupère ces données et les compare afin de renvoyer la distance en mètre en ces deux coordonées.
Une fois ces coordonnées GPS récupérées, nous les envoyons sur un algorithme en PHP qui tourne sur un server Web. Cet algorithme permet de récuperer les données du code Flutter et de les envoyés sur PhpMyAdmin, un service web permettant de créer des bases de données et de les utiliser grâce à des scripts PHP. Sur cette base de données, nous envoyons l'ID de l'utilisateur qui a envoyé ses coordonnées, sa latitude et sa longitude. Une fois ces trois données stockées, un autre script PHP, executé par une fonction Flutter getData(), récupère ces données et les comparent afin de renvoyer la distance en mètres en ces deux coordonées.
### Comparaison des données
Pour comparer deux coordonées GPS, nous avons pris un calcul sur Internet afin de determiner la distance en mètre entre deux points GPS. Pour ce calcul, nous convertissons tout d'abord les longitudes et latitudes en radian. Ensuite, nous effectuons différents calculs que nous même nous se serons pas justifier (sinus et cosinus, racine carré et utilisation du rayon de la Terre pour donner la distance finale en mètre). Après cela, cette fonction nous renvoie une distance en mètre.
Nous avons donc codé une fonction qui se connecte à la base de données, detecte quel utilisateur execute ce algorithme, et renvoie la liste de tout les utilisateurs autre que lui même à moins de 100 mètres de son appareil, en appelant la fonction qui calcul cette distance expliquée ci-dessus. La liste qui est renvoyé contient les ID des utilisateurs proches.
Loading…
Cancel
Save