-
Ecriture sur carte SD
Bonjour,
je teste une application Android qui doit, entre-autre, écrire sur une carte SD.
L’appli fonctionne sur pc, mais sur mon smartphone je sors en erreur car je ne satisfais pas la condition *if (sd.canWrite()) {*.
J’ai pourtant bien rajouté dans AndroidManifest.xml les lignes suivantes :
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />.
la carte a bien été formatée sur l’appareil et fonctionne puisque j’ai pu procéder à des copies de potos dessus.
Je pense que le pb vient de ma version Android (6.0.1) qui ne permet pas cette écriture.
Quelqu’un connait-il la parade ?
-
Je réponds moi-même, après avoir trouvé la solution.
En fait, le pb ne venait pas du test que je mettais en cause mais du path que j'indiquais pour la carte SD ;
Je ne me souviens plus du path erroné que j'utilisais, mais je l'ai remplacé par les instructions ci-dessous et mon pb s'est trouvé résolu :
String pathsd = "";
Context context1 = getApplicationContext();
File[] fs = context1.getExternalFilesDirs(null);
if (fs != null && fs.length >= 2)
{
pathsd = fs[1].getAbsolutePath(); }