48方案android改为32bit后,原来可以获取插入的U盘卷标名称,改后获取不了了,返回null,具体方法如下:
device\mstar\common\libraries\storage\java\com\mstar\android\storage\MStorageManager.java的类里面有个方法,public String getVolumeLabel(String mountPoint),传入参数为挂载点,如/mnt/usb/7E01-9936,以前64bit时调用此方法会返回U盘的卷标名称,改成32bit后返回为null,无法获取U盘的名称(U盘的名称是电脑上自定义的),所以文件管理器无法显示U盘名称?
解决:
使用patch
修改kernel 下面 dir.c static long fat_dir_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) { .... case VFAT_IOCTL_GET_VOLUME_ID: return fat_ioctl_volume_id(inode); #if (MP_FAT_VOLUME_LABEL==1) case VFAT_IOCTL_GET_VOLUME_LABEL: return fat_ioctl_volume_label(inode, arg); #endif default: return fat_generic_ioctl(filp, cmd, arg); .... } |