Comment puis-je déterminer le chemin de la carte SD?

11

Je suis sur un Thinkpad avec Android 4.0.2 essayant d'ouvrir un fichier HTML sur une carte SD, en utilisant le navigateur par défaut. Les réponses ici ont indiqué que vous devez accéder file:///mnt/sdcard, file:///mnt/sdcard-ext, file:///sdcard, et bien d' autres combinaisons, mais aucun d'entre eux travaillent pour moi: je viens de me « Webpage pas disponible ».

Apparemment, différentes machines montent la carte SD sur un chemin différent. Comment savoir sur quel chemin ma carte SD est montée? Ou si ce n'est pas le problème, quel est-il?

Jack M
la source
Par curiosité, et en partie à cause de certaines choses que vous avez mentionnées dans d'autres commentaires, que contiennent les fichiers HTML que vous mentionnez? Vous avez utilisé le terme «applications basées sur html» dans un commentaire, et je me demande ce que vous vouliez dire par là.
dotVezz

Réponses:

6

adb shell 'echo ${SECONDARY_STORAGE%%:*}'


la source
1
Vous pouvez également le faire echo $EXTERNAL_STORAGEdans un émulateur de terminal. Mais cela me donne le chemin vers la "carte SD" interne ( /storage/sdcard0) sur mon Galaxy S3 plutôt que vers la carte SD physique (pour laquelle le chemin est /storage/extSdCard)
Compro01
qu'en est-il echo $SECONDARY_STORAGE?
echo $SECONDARY_STORAGEme donne /storage/extSdCard:/storage/UsbDriveA:/storage/UsbDriveB:/storage/UsbDriveC:/storage/UsbDriveD:/storage/UsbDriveE:/storage/UsbDriveF, donc nous obtenons la carte SD externe ainsi qu'un tas d'autres trucs. Je ne sais pas si ces points de montage existaient avant d'utiliser un lecteur USB sur cette chose ou non.
Compro01
echo ${SECONDARY_STORAGE%%:*}
@AlexP. cela fonctionnera-t-il sur tous les appareils Android? Est-il possible d'obtenir uniquement ceux qui sont montés actuellement?
développeur Android
1

Sur la plupart des appareils, la carte SD est soit montée, soit au moins liée à /mnt/sdcardou /sdcard. Cependant, lorsque le périphérique comporte à la fois une carte SD interne et externe, cette dernière se trouve généralement "à l'intérieur" de la première, par exemple à /sdcard/external_sd. Alternativement, il peut être monté sur /mnt/extSdCardou /storage/extSdCard. Notez les majuscules. Les noms de fichiers Android sont sensibles à la casse.

Pour un utilisateur, le moyen le plus simple de savoir où il se trouve (ou dans votre cas, plutôt où se trouve votre `` fichier ''), est d'utiliser un gestionnaire de fichiers qui vous permet non seulement de parcourir votre carte SD, mais l'ensemble du système . J'utilise par exemple ES File Explorer : si je démarre l'application, elle me place automatiquement sur ma carte SD (je ne l'ai pas configurée telle, donc je suppose que c'est comme ça fonctionne toujours). Le chemin est affiché en haut de l'écran, vous le verrez donc immédiatement. S'il est trop long pour être affiché là-bas (même si vous passez en mode paysage), vous pouvez toujours «naviguer vers le haut» jusqu'à ce que vous ne voyiez que /là - bas, et noter toutes les étapes - vous vous retrouveriez donc avec le chemin complet.

Izzy
la source
Intéressant. Je me demande ce que ES File Explorer fait pour trouver le point de montage de la carte SD.
dotVezz
De toute façon sans gestionnaire de fichiers? La raison pour laquelle je dois le faire est que je n'ai pas d'Internet sans fil et que je souhaite accéder aux applications HTML à partir de la carte SD. Sans Internet sans fil, je ne peux pas télécharger un gestionnaire de fichiers.
Jack M
Puisqu'aucune de ces URL ne fonctionne, y a-t-il d'autres raisons pour lesquelles je ne parviendrais pas à accéder à la carte SD?
Jack M
@dotVezz ils utilisent un appel système spécial qui rend le répertoire dans lequel le stockage externe est monté. Jack: vous pourriez utiliser un émulateur de terminal (et des commandes shell comme cdet ls), mais je suppose que vous n'en avez pas non plus installé. Si vous avez un ordinateur connecté via USB, vous pouvez également utiliser adb shellla même procédure. En dehors de cela, je suis actuellement à court d'idées.
Izzy
Voir l'édition de Compro01: Quelle est votre version Android? Quelque part sur le chemin vers 4.2, d'autres chemins ont été introduits, comme /storage/sdcard0/.
Izzy
0

Seulement six ans plus tard ...

J'utilise l'application Android sshelper ( https://play.google.com/store/apps/details?id=com.arachnoid.sshelper ) sur l'appareil Android. Il agit comme un serveur SSH sur le smartphone et me permet de me connecter via ssh.

Cela m'a permis de fouiller et de trouver ma carte SD en: - envoyant automatiquement à la carte SD quelque part est un système de fichiers linux - découvrant que ce répertoire pointe vers / stockage / émulé / 0 en utilisant ls -lha - découvrant qu'il s'agit du stockage interne par parcourir le contenu - découvrir que / storage / contient un répertoire étrange comme "5674-9865" qui était l'entrée de ma carte SD.

eventhorizon
la source