J'ai une application fonctionnant sous Android 6 qui diffuse des données depuis un périphérique BLE. Cela fonctionne correctement lorsque vous utilisez quelque chose comme:Android 6 - Copier par programme un fichier d'application dans un autre dossier
myFile = nouveau fichier (getExternalFilesDir (chemin de fichier), MyData);
Le fichier résultant est à un endroit qui ressemble à:
Filepath:/stockage/émulé/0/Android/data/my_package/fichiers/mon_fichier
Je voudrais copier ce fichier un nouveau dossier qui n'est pas enterré dans la masse sous le répertoire Android/data afin qu'un utilisateur puisse facilement trouver et récupérer les données se connectant à un téléphone/tablette via le câble USB. Jusqu'ici, j'ai été incapable de comprendre comment faire ceci ... ou si c'est même possible. Tout ce que j'essaie semble aboutir à une exception d'autorisation.
Je souhaite que ce dossier soit au même niveau que ~/Android/data si possible. Si non, y a-t-il des alternatives? Comme mettre les données sur la carte SD. J'ai lu beaucoup de messages et d'articles sur le système de fichiers Android. Tout est très confus et vague. Et les nouvelles versions d'Android semblent changer la façon dont les choses fonctionnent. Si quelqu'un connaît une explication claire et concise par rapport à Android 6 (Marshmallow) (peut-être même avec des exemples de travail!) S'il vous plaît faites le moi savoir.
Merci, Max
Marshmallow exige de vérifier l'autorisation d'exécution lors de l'enregistrement de cette https://developer.android.com/training/permissions /requesting.html – Nakul