SSHelper: Karta SD Odmowa dostępu

10

Nie mogę zapisać na mojej karcie SD za pomocą 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

W „wewnętrznej” karcie SD nie ma problemu:

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

Informacje o aplikacji na Androida 5.1.1 Uprawnienia pokazuje:

  • zmodyfikuj lub usuń zawartość swojej karty SD. przeczytaj zawartość swojej karty SD

Czego brakuje, aby móc skanować pliki na mojej karcie micro SD za pomocą SSHelper?

heroedeleyenda
źródło
Na Androidzie 4.2.2 działa dobrze zarówno na / data i / storage / sdcard1
heroedeleyenda
To szalone, jak trudno jest używać uprawnień do vfat, co nie było do tego zaprojektowane. Nie rozumiem, dlaczego Android zamiast tego używa ext2.
heroedeleyenda

Odpowiedzi:

4

Spójrz na różne sposoby obejścia tego problemu, jak wyjaśniono w oficjalnych dokumentach .

Oto fragment:

Jednym z rozwiązań, które wcale nie jest łatwe, jest wyjęcie zewnętrznego urządzenia pamięci z urządzenia z Androidem, napisanie go w innym miejscu i odłożenie go z powrotem. Jest to wielki ból i działa tylko wtedy, gdy masz dostęp do urządzenia i jesteś trochę technikiem.

Istnieje trudniejsze rozwiązanie, które zapewnia stały dostęp do zapisu w miejscu, które wyjaśnię tutaj. Ale ostrzegamy - nie jest to normalna aktywność dla użytkowników końcowych i bez ostrożności możesz zmarnować urządzenie.

To ostatnie rozwiązanie wymaga dostępu do katalogu głównego i modyfikacji, /system/etc/permissions/platform.xmlaby uwzględnić <group gid="media_rw" />uprawnienia w odpowiednich sekcjach, jak pokazano poniżej:

<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>

Pamiętaj również, że zmiany w powyższym pliku najprawdopodobniej zostaną utracone podczas aktualizacji OTA (Over-The-Air).

Mansour
źródło