Yapılandırma örnekleri

Aşağıda harici depolama yapılandırmaları örnekleri verilmiştir farklı cihaz türleri için de geçerlidir. Yalnızca yapılandırmanın ilgili kısımları dosyaları dahil edilir.

Android 6.0'daki yapılandırma değişiklikleri (örneğin, storage_list.xml kaynak yerleşimi), yapılandırma örnekleri iki kategoriye ayırıyoruz.

Android 5.x ve önceki sürümler

Yalnızca fiziksel birincil

Bu, tek bir harici depolama alanı olan cihazlar için tipik bir yapılandırmadır (Nexus One gibi fiziksel bir SD kart)

Ham fiziksel cihaz, önce Yalnızca sistemin ve FUSE arka plan programının erişebileceği /mnt/media_rw somut olarak ortaya koyar. Ardından vold, fuse_sdcard0 hizmetini yönetecek medya öğesi eklendiğinde/çıkarıldığında.

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

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 emülasyonlu birincil

Bu, tek bir harici depolama alanı olan cihazlar için tipik bir yapılandırmadır bir cihaz (ör. Nexus 4 gibi) ve dahili depolama alanı tarafından desteklenir.

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

Emülasyonlu birincil, fiziksel ikincil

Bu, birden fazla harici kuruluş birimi bulunan cihazlarda tipik bir yapılandırmadır birincil cihazın dahili depolama alanı tarafından desteklendiği depolama cihazları ve ikincil cihazın Xoom gibi fiziksel bir SD kart olduğu durumlarda.

Ham fiziksel cihaz, önce Yalnızca sistemin ve FUSE arka plan programının yapabileceği /mnt/media_rw erişebilir. Ardından vold, fuse_sdcard1 yönetimini yönetecek. hizmetine geri yüklemenizi sağlar.

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

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, tek bir harici depolama alanı olan cihazlar için tipik bir yapılandırmadır Bu cihaz, orijinal Android One gibi fiziksel bir SD karttır. Hayır paylaşılan depolama alanı ve cihaz çok kullanıcıyı destekleyemez.

fstab.cihaz

/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 emülasyonlu birincil

Bu, tek bir harici depolama alanı olan cihazlar için tipik bir yapılandırmadır dahili depolama tarafından desteklenen bir cihaz (ör. Nexus 6) kullanabilirsiniz.

  • Birincil paylaşılan depolama alanı (/sdcard), dahili depolama üzerine emüle edilir.
  • İkincil SD kart depolama alanı yok.
  • USB OTG depolama cihazları desteklenir.
  • Çok kullanıcıyı destekler.

fstab.cihaz

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

Emülasyonlu birincil, fiziksel ikincil

Bu, birden fazla harici depolama alanı olan bir cihaz için tipik bir yapılandırmadır birincil cihazın, cihazdaki dahili depolama alanı tarafından desteklendiği cihazlar, ve ikincil cihazın Xoom gibi fiziksel bir SD kart olması gerekir.

  • Birincil paylaşılan depolama alanı (/sdcard), dahili depolama üzerine emüle edilir.
  • İkincil depolama alanı, kullanılabilecek fiziksel bir SD kart yuvasıdır.
  • Çok kullanıcıyı destekler.

fstab.cihaz

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