Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
cours:plim:projet16_17:gr13:gr13 [2017/02/19 20:32] mchebaane [Rendu Final] |
cours:plim:projet16_17:gr13:gr13 [2017/02/20 00:01] (Version actuelle) mchebaane [Rendu Final] |
||
---|---|---|---|
Ligne 112: | Ligne 112: | ||
==== Rendu Final==== | ==== Rendu Final==== | ||
- | |||
__**Code Source**__ | __**Code Source**__ | ||
Voici notre code final du Wifi Locator. Vous trouvez le code dans le lien suivant: | Voici notre code final du Wifi Locator. Vous trouvez le code dans le lien suivant: | ||
+ | https://github.com/meriemchebaane/elimwifilocator | ||
__**Architecture Globale**__ | __**Architecture Globale**__ | ||
Ligne 132: | Ligne 131: | ||
Notre proposition consiste à stocker la position de l’utilisateur ainsi que la valeur de débit des Wifis autour de lui. Dans ce contexte et devant les contraintes actuelles de notre application, notre base de données doit permettre à l’utilisateur d’accéder aux données dans un temps réel et d'une manière synchrone et asynchrone à la fois. | Notre proposition consiste à stocker la position de l’utilisateur ainsi que la valeur de débit des Wifis autour de lui. Dans ce contexte et devant les contraintes actuelles de notre application, notre base de données doit permettre à l’utilisateur d’accéder aux données dans un temps réel et d'une manière synchrone et asynchrone à la fois. | ||
- | Pour que nos données seront accessibles facilement et sont synchronisées en temps réel sur tous les appareils connectés, nous avons utilisés Firebase. Ce service se charge d’héberger les informations de wifis sous forme dun objet JSON. | + | Pour que nos données soient accessibles facilement et synchronisées en temps réel sur tous les appareils connectés, nous avons utilisés Firebase. Ce service se charge d’héberger les informations de wifis sous forme dun objet JSON. |
- | Nous avons utilisé aussi le systeme d’authentification offert par firebase. L’idée est qu’il propose un service prêt emploi qui ne va pas stocker les identifiants, mais assure le mécanisme de l’authetification elle-même. | + | Nous avons utilisé aussi le système d’authentification offert par firebase. L’idée est qu’il propose un service prêt emploi qui ne va pas stocker les identifiants, mais assure le mécanisme de l’authetification elle-même. |
Firebase permet aussi un cache pour anticiper sur des communications intermittentes et asynchrones. | Firebase permet aussi un cache pour anticiper sur des communications intermittentes et asynchrones. | ||
Ligne 145: | Ligne 144: | ||
== Coté Client == | == Coté Client == | ||
* Installation obligatoire | * Installation obligatoire | ||
+ | |||
+ | Puisque notre serveur et notre base de données sont déployés sur le cloud il va vous falloir d’installer l’application sur votre smartphone Android. | ||
+ | |||
+ | Télécharger et installer l’APK suivant sur votre smartphone :https://github.com/meriemchebaane/elimapk | ||
+ | |||
+ | Pour le bon fonctionnement de l’application, n’oubliez pas d’activer la localisation. | ||
+ | |||
+ | {{ :cours:plim:projet16_17:gr13:localisation.png?200 |}} | ||
* Utilisation de l’application mobile | * Utilisation de l’application mobile | ||
Ligne 150: | Ligne 157: | ||
{{:cours:plim:projet16_17:gr13:16833193_1854991001410115_246472487_o.png?200|}} {{:cours:plim:projet16_17:gr13:n.png?200|}} | {{:cours:plim:projet16_17:gr13:16833193_1854991001410115_246472487_o.png?200|}} {{:cours:plim:projet16_17:gr13:n.png?200|}} | ||
+ | {{:cours:plim:projet16_17:gr13:i.png?200|}} | ||
+ | |||
+ | Pour rajouter les nouvelles valeurs des wifis présentes, vous auriez besoin de cliquer sur le bouton plus. | ||
+ | |||
+ | Le deusième bouton sert a afficher la liste des regions. | ||
+ | |||
+ | {{:cours:plim:projet16_17:gr13:regions.png?200|}} | ||
+ | {{:cours:plim:projet16_17:gr13:pub.png?200|}} | ||
+ | |||
+ | L’amélioration effectuée tout au long de ce projet c’est qu’au lieu d’éffectuer un cluster sur un seul wifi dans une region bien précise, on envoie tout les wifis de la même region et on effectue le clustering pour rassurer le bon fonctionnement de K-means. En effet, dans la premiere version nous avons eu des clusters videos alors que lors du changement effectué nous avons réçu tout les clusters bien définis. Prenons le cas de 5 clusters ce que nous aurons en background comme ci-dessous: | ||
+ | |||
+ | {{ :cours:plim:projet16_17:gr13:0.png?700 |}} | ||
+ | {{:cours:plim:projet16_17:gr13:1.png?150|}} | ||
+ | {{:cours:plim:projet16_17:gr13:2.png?150|}} | ||
+ | {{:cours:plim:projet16_17:gr13:3.png?150|}} | ||
+ | {{:cours:plim:projet16_17:gr13:4.png?150|}} | ||
+ | {{:cours:plim:projet16_17:gr13:5.png?150|}} | ||
+ | Finalement, nous affichons les meilleurs signaux sur notre map: | ||
+ | {{ :cours:plim:projet16_17:gr13:final.png?250 |}} | ||