Yapılandırma örnekleri

Aşağıda çeşitli cihaz türleri için harici depolama yapılandırmalarının örnekleri verilmiştir. Yapılandırma dosyalarının yalnızca ilgili kısımları dahil edilmiştir.

Android 6.0'daki yapılandırma değişiklikleri nedeniyle ( storage_list.xml kaynak katmanının kaldırılması gibi), yapılandırma örnekleri iki kategoriye ayrılmıştır.

Android 5.x ve öncesi

Yalnızca fiziksel birincil

Bu, Nexus One gibi fiziksel bir SD kart olan tek harici depolama cihazına sahip bir cihaz için tipik bir yapılandırmadır.

Ham fiziksel aygıtın öncelikle /mnt/media_rw altına bağlanması gerekir; burada yalnızca sistem ve FUSE arka plan programı ona erişebilir. vold daha sonra medya eklendiğinde/çıkarıldığında fuse_sdcard0 hizmetini yönetecektir.

fstab.donanım

[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

depolama_listesi.xml

<storage
    android:mountPoint="/storage/sdcard0"
    android:storageDescription="@string/storage_sd_card"
    android:removable="true"
    android:primary="true"
    android:maxFileSize="4096" />

Yalnızca öykünülmüş birincil

Bu, Nexus 4 gibi cihazdaki dahili depolama tarafından desteklenen tek harici depolama cihazına sahip bir cihaz için tipik bir yapılandırmadır.

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

depolama_listesi.xml

<storage
    android:storageDescription="@string/storage_internal"
    android:emulated="true"
    android:mtpReserve="100" />

Benzetilmiş birincil, fiziksel ikincil

Bu, birincil cihazın cihazdaki dahili depolama tarafından desteklendiği ve ikincil cihazın Xoom gibi fiziksel bir SD kart olduğu, birden fazla harici depolama cihazına sahip bir cihaz için tipik bir yapılandırmadır.

Ham fiziksel aygıtın öncelikle /mnt/media_rw altına bağlanması gerekir; burada yalnızca sistem ve FUSE arka plan programı ona erişebilir. vold daha sonra medya takıldığında/çıkarıldığında fuse_sdcard1 hizmetini yönetecektir.

fstab.donanımı

[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

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

Yalnızca fiziksel birincil

Bu, orijinal Android One gibi fiziksel bir SD kart olan tek bir harici depolama cihazına sahip bir cihaz için tipik bir yapılandırmadır. İkincil paylaşılan depolama alanı yoktur ve cihaz çoklu kullanıcıyı destekleyemez.

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

Yalnızca öykünülmüş birincil

Bu, Nexus 6 gibi, cihazdaki dahili depolama tarafından desteklenen tek harici depolama cihazına sahip bir cihaz için tipik bir yapılandırmadır.

  • Birincil paylaşılan depolama ( /sdcard ) dahili depolamanın üstüne öykünülür.
  • İkincil SD kart depolama alanı yok.
  • USB OTG depolama aygıtları desteklenir.
  • Çoklu kullanıcıyı destekler.

fstab.device

/devices/*/xhci-hcd.0.auto/usb*             auto            auto    defaults
                                                    voldmanaged=usb:auto

Benzetilmiş birincil, fiziksel ikincil

Bu, birincil cihazın cihazdaki dahili depolama tarafından desteklendiği ve ikincil cihazın Xoom gibi fiziksel bir SD kart olduğu, birden fazla harici depolama cihazına sahip bir cihaz için tipik bir yapılandırmadır.

  • Birincil paylaşılan depolama ( /sdcard ) dahili depolamanın üstüne öykünülür.
  • İkincil depolama, benimsenebilecek fiziksel bir SD kart yuvasıdır.
  • Çoklu kullanıcıyı destekler.

fstab.device

/devices/platform/mtk-msdc.1/mmc_host*           auto      auto     defaults
voldmanaged=sdcard1:auto,encryptable=userdata