فيما يلي أمثلة لتكوينات وحدات التخزين الخارجية لأنواع الأجهزة المختلفة. يتم تضمين الأجزاء ذات الصلة من ملفات التكوين فقط.
بسبب تغييرات التكوين في Android 6.0 (مثل إزالة تراكب الموارد storage_list.xml
)، تم تقسيم أمثلة التكوين إلى فئتين.
أندرويد 5.x والإصدارات الأقدم
الابتدائية المادية فقط
يعد هذا تكوينًا نموذجيًا لجهاز مزود بجهاز تخزين خارجي واحد وهو عبارة عن بطاقة SD فعلية، مثل Nexus One.
يجب أولاً تثبيت الجهاز الفعلي الأولي ضمن /mnt/media_rw
حيث يمكن فقط للنظام وبرنامج FUSE الوصول إليه. سيقوم vold
بعد ذلك بإدارة خدمة fuse_sdcard0
عند إدراج/إزالة الوسائط.
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
Storage_list.xml
<storage android:mountPoint="/storage/sdcard0" android:storageDescription="@string/storage_sd_card" android:removable="true" android:primary="true" android:maxFileSize="4096" />
تمت محاكاة الأساسي فقط
يعد هذا تكوينًا نموذجيًا لجهاز مزود بجهاز تخزين خارجي واحد مدعوم بوحدة تخزين داخلية على الجهاز، مثل 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" />
مقلد الابتدائية والثانوية المادية
يعد هذا تكوينًا نموذجيًا لجهاز يحتوي على أجهزة تخزين خارجية متعددة، حيث يكون الجهاز الأساسي مدعومًا بوحدة تخزين داخلية على الجهاز، وحيث يكون الجهاز الثانوي عبارة عن بطاقة SD فعلية، مثل Xoom.
يجب أولاً تثبيت الجهاز الفعلي الأولي ضمن /mnt/media_rw
حيث يمكن فقط للنظام وبرنامج FUSE الوصول إليه. سيقوم vold
بعد ذلك بإدارة خدمة fuse_sdcard1
عند إدراج/إزالة الوسائط.
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
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" />
أندرويد 6.0
الابتدائية المادية فقط
يعد هذا تكوينًا نموذجيًا لجهاز مزود بجهاز تخزين خارجي واحد وهو عبارة عن بطاقة SD فعلية، مثل Android One الأصلي. لا توجد مساحة تخزين مشتركة ثانوية ولا يمكن للجهاز دعم تعدد المستخدمين.
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
تمت محاكاة الأساسي فقط
يعد هذا تكوينًا نموذجيًا لجهاز مزود بجهاز تخزين خارجي واحد مدعوم بوحدة تخزين داخلية على الجهاز، مثل Nexus 6.
- تتم محاكاة وحدة التخزين المشتركة الأساسية (
/sdcard
) أعلى وحدة التخزين الداخلية. - لا يوجد تخزين ثانوي لبطاقة SD.
- أجهزة تخزين USB OTG مدعومة.
- يدعم تعدد المستخدمين.
fstab.device
/devices/*/xhci-hcd.0.auto/usb* auto auto defaults voldmanaged=usb:auto
مقلد الابتدائية والثانوية المادية
يعد هذا تكوينًا نموذجيًا لجهاز يحتوي على أجهزة تخزين خارجية متعددة، حيث يكون الجهاز الأساسي مدعومًا بوحدة تخزين داخلية على الجهاز، وحيث يكون الجهاز الثانوي عبارة عن بطاقة SD فعلية، مثل Xoom.
- تتم محاكاة وحدة التخزين المشتركة الأساسية (
/sdcard
) أعلى وحدة التخزين الداخلية. - التخزين الثانوي عبارة عن فتحة بطاقة SD فعلية يمكن اعتمادها.
- يدعم تعدد المستخدمين.
fstab.device
/devices/platform/mtk-msdc.1/mmc_host* auto auto defaults voldmanaged=sdcard1:auto,encryptable=userdata