Android 9.0 支持NTFS和exFAT格式U盘开发

Android 9.0 支持NTFS和exFAT格式U盘开发

Android_P_external_exfat_ntfs-3g Android_P_external_exfat_ntfs-3g 项目地址: https://gitcode.com/gh_mirrors/an/Android_P_external_exfat_ntfs-3g

该项目旨在为Android 9.0系统提供NTFS和exFAT格式U盘的支持,以便用户可以方便地读取和写入这些格式的U盘。

项目介绍

该项目基于开源项目 Shawnsongs/Android_P_external_exfat_ntfs-3g,为Android 9.0系统提供NTFS和exFAT格式U盘的支持。通过修改内核和用户空间的代码,使Android设备能够识别和挂载NTFS和exFAT格式的U盘,并允许用户进行读写操作。

项目快速启动

准备工作

  1. 克隆项目到本地:

    git clone https://github.com/Shawnsongs/Android_P_external_exfat_ntfs-3g.git
    cd Android_P_external_exfat_ntfs-3g
    
  2. 准备Android 9.0源代码:

    下载Android 9.0的源代码,并解压到本地。

  3. 准备编译环境:

    安装必要的编译工具和环境,例如交叉编译器、构建系统等。

修改内核代码

  1. kernel-no-fuse/exfat目录下的exfat文件复制到Android源代码的vendor/nxp-opensource/kernel_imx/fs/目录下。

  2. 修改kernel_imx/arch/arm64/configs/android_f202_p_car_defconfig配置文件,添加以下内容:

    CONFIG_EXFAT_FS=y
    CONFIG_EXFAT_DEFAULT_CODEPAGE=437
    CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
    
  3. 修改kernel_imx/fs/Kconfig文件,添加以下内容:

    source "fs/exfat/Kconfig"
    
  4. 修改kernel_imx/fs/Makefile文件,添加以下内容:

    obj-$(CONFIG_EXFAT_FS) += exfat/
    
  5. 编译内核:

    make dtboimage
    make bootimage
    
  6. 烧录内核到设备。

修改用户空间代码

  1. external-exfat-fuse/exfatexternal-exfat-fuse/fuse目录下的文件复制到Android源代码的external/目录下。

  2. 修改external-exfat-fuse/exfat/Android.mk文件,添加以下内容:

    LOCAL_CFLAGS := \
    -D_FILE_OFFSET_BITS=64 \
    -DFUSE_USE_VERSION=26 \
    -Wno-error=format-security \
    -Wno-sign-compare \
    -Wno-unused-parameter \
    -Wno-pointer-arith \
    -Wno-address-of-packed-member \
    -Wno-missing-field-initializers \
    -Wno-logical-not-parentheses
    
  3. 编译用户空间代码:

    make -j128
    
  4. 将编译生成的mount.exfatmkfs.exfat等文件复制到设备上。

测试

  1. 将NTFS或exFAT格式的U盘插入设备。

  2. 使用命令mount.exfat /dev/sdb1 /mnt/usb挂载U盘。

  3. 查看U盘内容:

    ls /mnt/usb
    

应用案例和最佳实践

  1. 使用NTFS或exFAT格式的U盘进行文件存储和传输。

  2. 将NTFS或exFAT格式的U盘用作备份设备。

  3. 使用NTFS或exFAT格式的U盘作为媒体库。

典型生态项目

  1. NTFS-3G for Android:一个开源的NTFS文件系统驱动程序,用于在Android设备上读取和写入NTFS格式的U盘。

  2. exFAT for Android:一个开源的exFAT文件系统驱动程序,用于在Android设备上读取和写入exFAT格式的U盘。

Android_P_external_exfat_ntfs-3g Android_P_external_exfat_ntfs-3g 项目地址: https://gitcode.com/gh_mirrors/an/Android_P_external_exfat_ntfs-3g

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邬颖舒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值