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édentesRévision précédente
Prochaine révision
Révision précédente
cours:plim:projet16_17:gr2:gr2 [2017/02/19 04:07] – [Version SEREE] ysereecours:plim:projet16_17:gr2:gr2 [2017/02/19 20:10] (Version actuelle) – [Version SEREE] yseree
Ligne 69: Ligne 69:
 ===Code=== ===Code===
  
-APK de l'application Android : {{:cours:plim:projet16_17:gr2:smartbatteryseree.zip|apk}} \\ +{{:cours:plim:projet16_17:gr2:smartbatteryseree.zip|apk de l'application Android}} \\ 
-Serveur : {{:cours:plim:projet16_17:gr2:kmeanseree.zip|serveur}}+{{:cours:plim:projet16_17:gr2:kmeanseree.zip|serveur (jar)}}
  
 ===Code source=== ===Code source===
 +
 +{{:cours:plim:projet16_17:gr2:serveur_source_seree.zip|Code source du serveur}}\\
 +[[https://mega.nz/#!385xGbyB!8BcT37Qehw9UQWvaKO1OzvKxcvNdKszIH11tSCh0KWk|Code source de l'application Android]]
  
 ===Serveur=== ===Serveur===
 ==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 93: 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.1487477250.txt.gz · Dernière modification : 2017/02/19 04:07 de yseree