Outils pour utilisateurs

Outils du site


cours:plim:projet16_17:gr2:gr2

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cours:plim:projet16_17:gr2:gr2 [2017/02/19 05:40]
yseree [Version SEREE]
cours:plim:projet16_17:gr2:gr2 [2017/02/19 21:10] (Version actuelle)
yseree [Version SEREE]
Ligne 70: Ligne 70:
  
 {{:​cours:​plim:​projet16_17:​gr2:​smartbatteryseree.zip|apk de l'​application Android}} \\ {{:​cours:​plim:​projet16_17:​gr2:​smartbatteryseree.zip|apk de l'​application Android}} \\
-{{:​cours:​plim:​projet16_17:​gr2:​kmeanseree.zip|serveur}}+{{:​cours:​plim:​projet16_17:​gr2:​kmeanseree.zip|serveur ​(jar)}}
  
 ===Code source=== ===Code source===
Ligne 80: Ligne 80:
 ==Lancement du serveur== ==Lancement du serveur==
  
-Pour lancer le serveur télécharger le .zip du serveur ci-dessus. \\ +Pour lancer le serveur télécharger le .zip du serveur ci-dessus ​(section Code). \\ 
-Extraire le .zip puis lancer start.bat. \\ +Extraire le .zip puis lancer ​//**start.bat**// qui permettra d'​exécuter le jar.\\ 
-Le fichier //​values.json//​ contient les données collectées,​ le kmean est exécuté à partir des données contenues dans ce fichier.+Le serveur tourne sur le port 3456, veuillez vous assurer que le port n'est pas pris par un autre processus. \\ 
 +Le fichier //​values.json//​ contient les données collectées,​ le kmean est exécuté à partir des données contenues dans ce fichier. Ce fichier json est mis automatiquement à jour lorsque de nouvelles données collectées sont reçues par le serveur.
  
 ===Application Android=== ===Application Android===
Ligne 96: Ligne 97:
   * Rentrez tout d'​abord l'​adresse IP de la machine qui exécute le serveur (comme sur la première capture d'​écran ci-dessus) et cliquez sur le bouton //START//   * Rentrez tout d'​abord l'​adresse IP de la machine qui exécute le serveur (comme sur la première capture d'​écran ci-dessus) et cliquez sur le bouton //START//
   * Acceptez ensuite la permission pour la localisation   * Acceptez ensuite la permission pour la localisation
-  * Cliquer sur le bouton //REFRESH KMEAN// pour obtenir le Kmean du serveur, comme sur la seconde capture d'​écran ci-dessus, vous obtiendrez les centroids ainsi que les points correspondants aux clusters (vert correspondant à une consommation de batterie faible, bleu à une consommation moyenne et rouge à une consommation forte). \\ L'​utilisateur peut afficher uniquement certain cluster en cochant/​décochant les chekbox (faible/​moyenne/​forte) ​ \\ Il est également possible de consulter tout les points en cliquant sur l'​onglet //Liste//.+  * Cliquer sur le bouton //REFRESH KMEAN// pour obtenir le Kmean du serveur, comme sur la seconde capture d'​écran ci-dessus, vous obtiendrez les centroids ainsi que les points correspondants aux clusters (vert correspondant à une consommation de batterie faible, bleu à une consommation moyenne et rouge à une consommation forte). \\ L'​utilisateur peut afficher uniquement certain cluster en cochant/​décochant les chekbox (faible/​moyenne/​forte) ​ \\ Il est également possible de consulter tout les points en cliquant sur l'​onglet //​Liste// ​(la consommation affichée correspond au pourcentage de batterie utilisé par heure). 
 + 
 + 
 +==Notes techniques de l'​application== 
 +\\ 
 +L'​application utilise un //​**AlarmManager**//​ ([[https://​developer.android.com/​reference/​android/​app/​AlarmManager.html|]]) permettant ainsi de lancer la collecte des données toutes les **15** minutes, ce qui évite d'​avoir un //service// ou un //​asynctask//​ tournant en continu en arrière plan. De ce fait l'​application consomme très peu de batterie et n'​influence donc pas sur les données collectées de la consommation de batterie. \\ 
 +Les données collectées sont stockés directement dans un **fichier interne** ([[https://​developer.android.com/​guide/​topics/​data/​data-storage.html#​filesInternal|doc]]) sous format JSON afin de pouvoir utiliser l'​application en **hors-connexion**. \\ 
 +Si une connexion internet est présente (le smartphone et le serveur devant être sur le même WiFi), le contenu de ce fichier est envoyé au serveur. \\ 
 +Du côté du serveur, les données reçues sont automatiquement placées dans un fichier JSON (//​values.json//​). \\ Lorsque l'​utilisateur actionne le bouton //REFRESH KMEAN//, une requête est envoyé au serveur : \\ 
 +  * le serveur exécute l'​algorithme du **Kmean** depuis les données contenues dans son fichier //​values.json 
 +// 
 +  * le résultat de ce Kmean est stocké dans un autre fichier JSON (//​kmean.json//​)  
 +  * le contenu de ce fichier est envoyé à l'​application Android.\\ 
 +Une fois le kmean reçu, l'​application le stocke dans un fichier interne. Ainsi les différents clusters du kmean sont également accessibles hors-connexion.
  
  
-==Détails techniques de l'​application== 
  
-en cours...\\ 
  
 ====Version YU==== ====Version YU====
  
cours/plim/projet16_17/gr2/gr2.1487479230.txt.gz · Dernière modification: 2017/02/19 05:40 par yseree