French Accéder au dossier /mnt/sdcard

Discussion in 'French Forum' started by FLAMMANT Didier, Apr 19, 2019.

  1. FLAMMANT Didier

    FLAMMANT Didier New Member Licensed User

    Bonjour,
    Je suis novice en B4A mais connais bien le développement VB.Net sous Windows CE et Mobile.

    Pour que mon application soit paramétrable depuis l'extérieur de mon programme, je voudrais déposer des fichiers dans le dossier /mnt/sdcard via la liaison USB ou autre. Mon programme détecte la présence de ces fichiers et récupère les données. Après récupération les fichiers seront effacés par mon programme.
    Le problème est que je n'arrive pas à accéder via B4A à ce dossier alors que le gestionnaire de fichiers d'Android y arrive.
    Ma version Android : 6.0.1

    Merci de votre réponse
     
  2. klaus

    klaus Expert Licensed User

    Désolé de ne répondre qu'aujourd'hui.
    J'avais vu ta question un soir et je me suis dit que je j'y répondrai le lendemain.
    Mais le lendemain j'avais oublié.

    L'accès à la mémoire extérieure est devenu beaucoup plus compliqué avec les dernières versions d'Android.
    Est-ce que /mnt/sdcard est une carte interne de l'appareil ou une carte externe que l'utilisateur peut changer.
    De mémoire, la désignation /mnt/sdcard n'est pas standardisé.

    Peux-tu poster le code que tu utilises, ou mieux un petit projet démontrant le problème.

    Ci-joint, un petit programme qui sauve un texte et le relit.
    Qui fonctionne aussi sur Android 9.
    Le répertoire est un répertoire spécifique au programme qui s'appelle comme suit chez moi:
    /storage/emulated/0/Android/data/b4a.AccesMemoire/files
    Le fichier est visible sur l'appareil avec le programme Mes fichiers.
    Il est aussi accessible et modifiable depuis l'ordinateur lorsqu'on connecte l'appareil au PC via un câble USB
    Si tu veux accéder à une carte externe c'est plus compliqué.
     

    Attached Files:

  3. FLAMMANT Didier

    FLAMMANT Didier New Member Licensed User

    Bonjour Klaus
    Merci pour ta réponse. J'ai bien essayé l'exemple donné sur le forum qui permet d'écrire dans le dossier de l'application. Depuis le PDA (DATALOGIC Joya Touch) j'arrive bien à relire le dit fichier. Par contre si j'utilise le gestionnaire de fichiers du PDA, pas de trace des dossiers 0, Android, etc dans le dossier /storage/emulated
    Sur une tablette Android et sur le PDA je retrouve bien le dossier /mnt/sdcard. Celui-ci correspond bien à un dossier interne des appareils. Avec les gestionnaires de fichiers des appareils, j'arrive bien à créer des dossiers et fichiers mais impossible à les lire depuis B4A. A chaque fois j'ai l'erreur Access denied. Quand je connecte le PDA sur mon PC sous Windows 10, je ne le vois pas dans l'explorateur de fichiers de Windows.
     
  4. FLAMMANT Didier

    FLAMMANT Didier New Member Licensed User

    Rebonjour Klaus
    En cochant l'option "Transférer des fichiers" de ma connexion USB au PDA, j'ai bien accès depuis mon PC et depuis le PDA au dossier /storage/emulated/0/Toto qui est le dossier créé depuis le PC. Depuis le gestionnaire de fichiers du PDA j'y accède également. Je viens d'essayer ton exemple et c'est tout bon. Je vais modifier mon dossier pour l'import de données depuis le PC.
    Merci beaucoup pour ton aide.

    Saurais-tu par hasard où je pourrais suivre une formation (même payante) sur l'utilisation de B4A et Android. Ce système d'exploitation m'est complètement inconnu étant tombé dans Windows depuis ses débuts...
     
  5. klaus

    klaus Expert Licensed User

    Le dossier de l'application, Files.DirInternal, est dossier attribué à l'utilisation exclusive de l'application, donc pas accessible par d'autres.

    Est-ce que tu as essayé le programme que j'ai joint à mon précédent message?

    Sinon, postes ton projet en fichier zip (menu File / Export As Zip ou Fichier / Exporter en zip) et j'y jetterais un coup d'oeil.
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice