J'ai un fichier sur la carte SD et mon application en l'utilisant comme fichier journal.
Est-il possible grâce à la RDA de regarder le fichier avec tous les changements en temps réel?
Comme avec queue -f /sdcard/myfile.log code> commande. P>
5 Réponses :
Vous pouvez le faire avec LOGCAT. Vous pouvez ajouter une vue qui ne fera que montrer uniquement les entrées de journal à partir de votre application et il sera mis à jour en permanence. P>
Oui, je connais des possibilités de l'enregistreur Android. Mais, j'ai besoin de connecter un format propre spécifique. C'est des exigences de mon employeur. Pour le moment, je ne vois pas d'autres occasions de regarder le journal en plus d'une installation d'enracinement et d'actionnement.
Comment connectez-vous LOGCAT pour regarder un fichier? Cela ressemble exactement à ce dont j'ai besoin.
Il y a une excellente application pour cela: ide terminal . Il contient de nombreuses commandes Linux et n'a pas besoin d'un accès root. Vous pouvez l'installer à partir de Googleplay . Est gratuit (et open source, gplv2).
Une de ses meilleures fonctionnalités est qu'elle peut être utilisée via Vous devez utiliser l'adresse IP de votre téléphone au lieu de la ci-dessus. Après une connexion réussie, vous aurez un terminal de tailles arbitraire sur votre PC, qui est capable d'exécuter la commande telnet code>. Commencez-le sur votre téléphone et tapez
Telnetd code>. Il démarrera un démon telnet, qui écoute sur le port 8080 par défaut.
Après cela, vous pouvez le connecter à partir de votre PC, avec la commande suivante: (Utilisez Cygwin sous Windows) P>
queue -f code> sur votre téléphone. Et beaucoup d'autres, tels que
bash code> et toutes ses commandes intégrées. P> p>
Cela semble fonctionner très bien pour moi:
adb shell "while true; do cat; sleep 1; done < /sdcard/myfile.log"
Excellent! Pour les utilisateurs de Windows: substituez le nom de fichier avec '% 1' et placez-le dans un fichier de commandes (par exemple 'adbtilant.bat') dans% Windir%: "C: \ Program Files (x86) \ Android \ Android- sdk \ plates-formes-outils \ adb "shell" tandis que vrai; dort de chat; dormez 1; fait <'% 1' " code>
Bâtiment sur la réponse de Jesse, à faire semblable avec un fichier dans la zone de stockage privée d'une application: P>
(Cet exemple est pour une application à flutter sur Android, mais est similaire moins le répertoire App_flutter.) P>
Remplacer Ajouter adb shell "tandis que c'est vrai; faire courir-comme com.yourdomain.votreapp chat /data/data/com.yourdomaine.votreapp/app_flutter/yourfile.txt; sommeil 5; fait" | Egrep -o 'sasext. {0,50}' code> p>
fonctionne-comme code> modifie l'utilisateur sous lequel la commande est exécutée à l'application. Par défaut, l'utilisateur d'ADB Shell ne doit avoir accès à aucun fichier dans la zone de stockage privée d'une application. P>
| Egrep -o 'sasext. {0,50}' code> La commande CAT envoie le contenu du fichier à stdout.
Egrep CODE> prend le contenu et la recherche de
-o code> (uniquement)
sometext code> + 50 caractères "à l'aide de Regex (donc
Egrep code > au lieu de
grep code>). p>
dernière ligne uniquement h3>
CAT code> avec
Tail -N 1 code>. P>
- Ligne-Buffered CODE> TO
EGREP CODE> P>
joke adb "tandis que vrai; faire courir-comme com.yourdomain.votreapp queue 1 /data/data/com.yourdomain.votreappromain.votreappr.com-app_flutter/yourfile.txt; dormir 5; fait" | Egrep -line-tampered -o'o 'sasext. {0,50}' code> p>