以下为在RK平台中添加usb_storage2为例子,它是作为第四个挂载点(1、内部存储,2、外部存储,3、usb_storage)

1、在frameworks/base/core/res/res/values/strings.xml里添加新的U盘描述如USB storage 2

2、在device目录下找到项目或者芯片提供商的common目录下的overlay/frameworks/base/core/res/res/xml/下的对应storage的列表xml,注意产品类型,不同类型对应不同的list的xml。

在对应的xml里加上

android:storageDescription="@string/storage_usb2"

android:primary="false"

android:removable="true"

android:mtpReserve="100"/>

3、在device目录下芯片提供商目录下找到生成挂载目录的地方,例如rk提供商在5.1的源码下是在/device/rockchip/common/init.rockchip.rc里的

可以在搜索mkdir /mnt/usb_storage这个字符串进行定位,

在mkdir /mnt/usb_storage 0000 system system的下行加上export FOURT_VOLUME_STORAGE /mnt/usb_storage2

mkdir /mnt/usb_storage2 0000 system system

4、如果是emmc设备则在device中的自己型号项目中的fstab.rk30board.bootmode.emmc里添加下面这行,如果不是emmc设备就在fstab.rk30board.bootmode.unknown里添加下面这行/device/ff540000.usb    /mnt/usb_storage2     vfat      defaults      voldmanaged=usb_storage2:auto

其中ff540000这个是usb口指向的地址,由具体情况修改。

修改编译完成后,需要文件管理器配合,部分文件管理器只默认显示usb_storage里的文件,usb_storage2需要另外处理。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐