SSHelper: autorisation de carte SD refusée

10

Je ne parviens pas à écrire sur ma carte SD à l'aide de SSHelper:

u0_a264@MSM8974:/storage/sdcard1 $ df /storage/sdcard1                                                               
Filesystem               Size     Used     Free   Blksize
/storage/sdcard1       119.1G   625.3M   118.4G   32768

u0_a264@MSM8974:/storage/sdcard1 $ mkdir Test

mkdir failed for Test, Permission denied

Dans la carte SD "interne" il n'y a pas de problème:

u0_a264@MSM8974:/data/data/com.arachnoid.sshelper/home $ mkdir Test
u0_a264@MSM8974:/data/data/com.arachnoid.sshelper/home $ rmdir Test

Les autorisations de l'application Android 5.1.1 montrent:

  • modifier ou supprimer le contenu de votre carte SD. lire le contenu de votre carte SD

Que manque-t-il pour pouvoir scanner des fichiers sur ma carte micro SD en utilisant SSHelper?

heroedeleyenda
la source
Sur un Android 4.2.2, cela fonctionne très bien sur / data et / storage / sdcard1
heroedeleyenda
Il est fou de voir à quel point il est difficile d'utiliser des autorisations sur vfat, qui n'a pas été conçu pour cela. Je ne comprends pas pourquoi Android n'utilise pas ext2 à la place.
heroedeleyenda

Réponses:

4

Jetez un œil aux différentes façons de contourner ce problème, comme expliqué dans la documentation officielle .

Voici un extrait:

Une solution, pas du tout facile, consiste à retirer le périphérique de stockage externe de l'appareil Android, à y écrire ailleurs et à le remettre. C'est une grande douleur et ne fonctionne que si vous avez accès à l'appareil et que vous êtes un peu un technicien.

Il existe une solution plus difficile qui accorde un accès permanent en écriture, que j'expliquerai ici. Mais soyez averti - ce n'est pas une activité normale pour les utilisateurs finaux, et sans faire attention, vous pouvez briquer votre appareil.

Cette dernière solution nécessite un accès root et une modification /system/etc/permissions/platform.xmlpour inclure l' <group gid="media_rw" />autorisation dans les sections pertinentes, comme indiqué ci-dessous:

<permission name="android.permission.READ_EXTERNAL_STORAGE" >
    <group gid="sdcard_r" />
    <group gid="media_rw" />
</permission>

<permission name="android.permission.WRITE_EXTERNAL_STORAGE" >
    <group gid="sdcard_r" />
    <group gid="sdcard_rw" />
    <group gid="media_rw"/>
</permission>

<permission name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE" >
    <group gid="sdcard_r" />
    <group gid="sdcard_rw" />
    <group gid="sdcard_all" />
    <group gid="media_rw" />
</permission>

Notez également que vos modifications apportées au fichier ci-dessus seront très probablement perdues lorsque vous effectuez une mise à jour OTA (Over-The-Air).

Mansour
la source