Contoh konfigurasi

Berikut adalah contoh konfigurasi penyimpanan eksternal untuk berbagai jenis perangkat. Hanya bagian konfigurasi yang relevan file disertakan.

Karena perubahan konfigurasi di Android 6.0 (seperti penghapusan overlay resource storage_list.xml), contoh konfigurasinya adalah dibagi menjadi dua kategori.

Android 5.x dan yang lebih lama

Hanya fisik primer

Ini adalah konfigurasi umum untuk perangkat dengan satu penyimpanan eksternal perangkat yang merupakan kartu SD fisik, seperti Nexus One.

Perangkat fisik mentah harus dipasang terlebih dahulu di /mnt/media_rw tempat hanya sistem dan daemon FUSE yang dapat mengakses anotasi. vold kemudian akan mengelola layanan fuse_sdcard0 saat media dimasukkan/dicopot.

{i>fstab.hardware<i}

[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

storage_list.xml

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

Khusus primer yang diemulasi

Ini adalah konfigurasi umum untuk perangkat dengan satu penyimpanan eksternal perangkat yang didukung oleh penyimpanan internal perangkat, seperti 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

storage_list.xml

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

Dasar yang diemulasikan, sekunder fisik

Ini adalah konfigurasi umum untuk perangkat dengan beberapa perangkat penyimpanan, di mana perangkat utama ditunjang oleh penyimpanan internal di perangkat itu, dan perangkat sekundernya adalah kartu SD fisik, seperti Xoom.

Perangkat fisik mentah harus dipasang terlebih dahulu di /mnt/media_rw saat hanya sistem dan daemon FUSE yang dapat mengaksesnya. vold kemudian akan mengelola fuse_sdcard1 saat media dimasukkan/dicopot.

{i>fstab.hardware<i}

[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

storage_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

Hanya fisik primer

Ini adalah konfigurasi umum untuk perangkat dengan satu penyimpanan eksternal perangkat yang merupakan kartu SD fisik, seperti Android One yang asli. Tidak ada penyimpanan bersama sekunder dan perangkat tidak mendukung multi-pengguna.

{i>fstab.device<i}

/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

Khusus primer yang diemulasi

Ini adalah konfigurasi umum untuk perangkat dengan satu penyimpanan eksternal perangkat yang didukung oleh penyimpanan internal perangkat, seperti Nexus 6.

  • Penyimpanan bersama utama (/sdcard) diemulasikan di atas penyimpanan internal.
  • Tidak ada penyimpanan kartu SD sekunder.
  • Perangkat penyimpanan USB OTG yang didukung.
  • Mendukung multi-pengguna.

{i>fstab.device<i}

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

Dasar yang diemulasikan, sekunder fisik

Ini adalah konfigurasi umum untuk perangkat dengan beberapa penyimpanan eksternal di mana perangkat utama ditunjang oleh penyimpanan internal di perangkat, dan perangkat sekundernya adalah kartu SD fisik, seperti Xoom.

  • Penyimpanan bersama utama (/sdcard) diemulasikan di atas penyimpanan internal.
  • Penyimpanan sekunder adalah slot kartu SD fisik yang dapat digunakan.
  • Mendukung multi-pengguna.

{i>fstab.device<i}

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