Est-il possible d'accéder aux journaux de données brutes des capteurs de lumière à partir d'un appareil Android (dans mon cas, un LG Optimus) ? Si oui, comment est-ce possible et quel serait le format du journal ?
Réponses
Trop de publicités?Le système Android surveille le capteur de lumière (pour des choses comme le réglage automatique du rétroéclairage), mais à ma connaissance, il n'enregistre pas spécifiquement ces données par défaut.
Vous pouvez obtenir une application comme AndroSensor qui permet d'accéder à tous les capteurs de votre téléphone et peut surveiller et enregistrer les données pour vous.
Malheureusement, bien qu'Android dispose des données du capteur de lumière, il ne les stocke nulle part (pour autant que je sache). Heureusement, il existe un très un moyen simple d'accéder aux données et de les stocker vous-même !
Il suffit de suivre les étapes ci-dessous, et vous devriez être opérationnel avec les données du capteur de lumière en un rien de temps !
- Télécharger Tasker de la Play Store
- Créer un nouveau .txt dans votre dossier de documents et nommez-le comme suit
Light_sensor_data.txt
(Vous pouvez avoir besoin d'un visualiseur/éditeur de fichiers tel que Explorateur de fichiers ). - Ouvrir Tasker et cliquez sur
+
→ Événement → Système → Boot du dispositif. - Cliquez sur l'engrenage (retour) dans le coin supérieur gauche.
- Un menu contextuel apparaît. Tapez sur Nouvelle tâche et le nommer
Light Sensor Data
(Ou ce que vous voulez). - Dans la tâche, cliquez sur
+
→ Fichier → Fichier d'écriture . - A droite de l'endroit où il est écrit Fichier il y a une loupe ; cliquez dessus.
- Maintenant, appuyez sur Documents → Données du capteur de lumière.txt
- Cliquez sur le "crayon" à la droite de Texte. Maintenant, faites défiler la liste qui dit Sélection variable et trouver Niveau de lumière . Il est proche du milieu.
- Cliquez maintenant sur le bouton Engrenage o Back bouton.
- Tapez
+
→ Tâche → Attendez . Si vous avez besoin que vos résultats soient mis à jour rapidement, je vous suggère de définir le paramètre MS à n'importe quel endroit entre10
y100
Cependant, cela utilisera beaucoup de CPU, donc si vous êtes d'accord avec des résultats de mise à jour plus lents, je mettrais Secondes entre1
y5
. - Une fois encore, cliquez sur le Engrenage (retour). Sélectionnez maintenant
+
→ Tâche → Goto et mettre Type aAction Number
y Numéro a1
. - Tapez sur le Engrenage (arrière) deux fois pour arriver à la Tâches écran. Cliquez maintenant sur Profils en haut de l'écran.
- Tapez sur
+
→ Événement → Système → Démarrage du dispositif et cliquez sur le Engrenage (retour). Un menu devrait s'afficher ; sélectionnez Données du capteur de lumière. - Sur le Profils il devrait y avoir un On/ Off à droite de votre Tâche. Tournez-le vers Off puis retour à On .
- Redémarrez votre appareil.
Remarque importante : non seulement vous devez avoir un capteur de lumière sur votre appareil, mais il doit aussi être activé. Vous pouvez vérifier s'il est activé ou non en appuyant sur les trois points dans le coin supérieur droit de tasker → Préférences et en sélectionnant l'option . moniteur onglet. Faites défiler la liste jusqu'à Capteur de lumière et veiller à ce que Oui est sélectionné.
Si tout a été configuré correctement, vous devriez maintenant être en mesure d'accéder aux niveaux de lumière en lisant Données du capteur de lumière.txt Vous pouvez également lire les données relatives au niveau de lumière en utilisant Tasker et même créer une fenêtre contextuelle affichant les informations actuelles.
Bonne chance, et j'espère que cela vous aidera.
Le moyen le plus simple d'y accéder est d'installer Termux un émulateur de terminal Linux qui vous permet d'accéder aux commandes Linux sur Android. Sur le Samsung A3, vous pouvez accéder aux données avec
cat /sys/class/sensors/light_sensor/lux
cat /sys/class/sensors/light_sensor/raw_data #alternative
Vous pouvez installer Python avec Termux et écrire un script Python qui va lire le contenu de ces fichiers, et le publier sur n'importe quel système Pub/sub avec MQTT. J'ai essayé Mosquitto, et il fonctionne parfaitement avec Termux. Vous pouvez même publier sur le cloud IoT de AWS, Microsoft ou Google. N'importe quel broker IoT fera l'affaire.