Vous trouverez ci-dessous des exemples de configurations de stockage externe pour différents types d'appareils. Uniquement les parties pertinentes de la configuration sont inclus.
En raison de modifications apportées à la configuration d'Android 6.0 (comme la suppression du
la superposition de ressources storage_list.xml
), les exemples de configuration sont
se divise en deux catégories.
Android 5.x et versions antérieures
Primaire physique uniquement
Il s'agit d'une configuration classique pour un appareil avec une seule mémoire de stockage externe qui est une carte SD physique, comme un Nexus One.
L'appareil physique brut doit d'abord être installé sous
/mnt/media_rw
, où seuls le daemon système et FUSE peuvent accéder
vold
gérera ensuite le service fuse_sdcard0
lors de l'insertion ou du retrait du contenu multimédia.
fstab.hardware
[physical device node] auto vfat defaults voldmanaged=sdcard0:auto,noemulatedsd
init.hardware.rc
on init mkdir /mnt/media_rw/sdcard0 0700 media_rw media_rw mkdir /storage/sdcard0 0700 root root export EXTERNAL_STORAGE /storage/sdcard0 service fuse_sdcard0 /system/bin/sdcard -u 1023 -g 1023 -d /mnt/media_rw/sdcard0 /storage/sdcard0 class late_start disabled
stockage_list.xml
<storage android:mountPoint="/storage/sdcard0" android:storageDescription="@string/storage_sd_card" android:removable="true" android:primary="true" android:maxFileSize="4096" />
Instance principale émulée uniquement
Il s'agit d'une configuration classique pour un appareil avec une seule mémoire de stockage externe appareil sauvegardé sur la mémoire de stockage interne de l’appareil, comme un Nexus 4.
init.hardware.rc
on init mkdir /mnt/shell/emulated 0700 shell shell mkdir /storage/emulated 0555 root root export EXTERNAL_STORAGE /storage/emulated/legacy export EMULATED_STORAGE_SOURCE /mnt/shell/emulated export EMULATED_STORAGE_TARGET /storage/emulated on fs setprop ro.crypto.fuse_sdcard true service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated class late_start
stockage_list.xml
<storage android:storageDescription="@string/storage_internal" android:emulated="true" android:mtpReserve="100" />
Émulation principale, secondaire physique
Il s'agit d'une configuration type pour un appareil doté de plusieurs périphériques de stockage, où l'appareil principal repose sur une mémoire de stockage interne sur l'appareil, et où l'appareil secondaire est une carte SD physique, comme Xoom.
L'appareil physique brut doit d'abord être installé sous
/mnt/media_rw
, où seuls le daemon système et FUSE peuvent
y accéder. vold
gérera ensuite fuse_sdcard1
lorsque du contenu multimédia est inséré/supprimé.
fstab.hardware
[physical device node] auto vfat defaults voldmanaged=sdcard1:auto
init.hardware.rc
on init mkdir /mnt/shell/emulated 0700 shell shell mkdir /storage/emulated 0555 root root mkdir /mnt/media_rw/sdcard1 0700 media_rw media_rw mkdir /storage/sdcard1 0700 root root export EXTERNAL_STORAGE /storage/emulated/legacy export EMULATED_STORAGE_SOURCE /mnt/shell/emulated export EMULATED_STORAGE_TARGET /storage/emulated export SECONDARY_STORAGE /storage/sdcard1 on fs setprop ro.crypto.fuse_sdcard true service sdcard /system/bin/sdcard -u 1023 -g 1023 -l /data/media /mnt/shell/emulated class late_start service fuse_sdcard1 /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/sdcard1 /storage/sdcard1 class late_start disabled
stockage_list.xml
<storage android:storageDescription="@string/storage_internal" android:emulated="true" android:mtpReserve="100" /> <storage android:mountPoint="/storage/sdcard1" android:storageDescription="@string/storage_sd_card" android:removable="true" android:maxFileSize="4096" />
Android 6.0
Primaire physique uniquement
Il s'agit d'une configuration classique pour un appareil avec une seule mémoire de stockage externe qui est une carte SD physique, comme la première version d'Android One. Il n'y a aucun stockage partagé secondaire et l'appareil n'est pas compatible avec le mode multi-utilisateur.
fstab.device
/devices/platform/mtk-msdc.1/mmc_host* auto auto defaults voldmanaged=sdcard0:auto,encryptable=userdata,noemulatedsd
init.device.rc.
on init # By default, primary storage is physical setprop ro.vold.primary_physical 1
Instance principale émulée uniquement
Il s'agit d'une configuration classique pour un appareil avec une seule mémoire de stockage externe appareil sauvegardé sur la mémoire de stockage interne de l’appareil, comme un Nexus 6.
- Le stockage partagé principal (
/sdcard
) est émulé en plus de la mémoire de stockage interne. - Carte SD secondaire introuvable.
- Périphériques de stockage USB OTG pris en charge.
- Compatible avec le mode multi-utilisateur.
fstab.device
/devices/*/xhci-hcd.0.auto/usb* auto auto defaults voldmanaged=usb:auto
Émulation principale, secondaire physique
Il s'agit d'une configuration type pour un appareil avec plusieurs espaces de stockage externe appareils, où l’appareil principal est sauvegardé par la mémoire de stockage interne sur l’appareil, et où le périphérique secondaire est une carte SD physique, comme Xoom.
- Le stockage partagé principal (
/sdcard
) est émulé en plus de la mémoire de stockage interne. - Le stockage secondaire est un emplacement physique pour carte SD qui peut être adopté.
- Compatible avec le mode multi-utilisateur.
fstab.device
/devices/platform/mtk-msdc.1/mmc_host* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata