Android 6.0上sdcard和U盘路径获取和区分

在Android 6.0上,由于路径动态生成,通过反射获取StorageVolume类的方法,结合getUserLabel和getPath,区分并获取SD卡和U盘的路径。代码示例展示了如何根据关键词匹配存储设备标签。
摘要由CSDN通过智能技术生成

Android6.0上会根据卡的种类和卡的挂载状态来动态生成挂载路径,所以之前写固定路径的办法不可用,最后通过网上查找和分析android源码,通过反射获取到路径,并且进行了正确区分,代码如下:

/**
     * 6.0获取外置sdcard和U盘路径,并区分
     * @param mContext
     * @param keyword  SD = "内部存储"; EXT = "SD卡"; USB = "U盘"
     * @return
     */
    public static String getStoragePath(Context mContext,String keyword) {
        String targetpath = "";
        StorageManager mStorageManager = (StorageManager) mContext
                .getSystemService(Context.STORAGE_SERVICE);
        Class<?> storageVolumeClazz = null;
        try {
            storageVolumeClazz = Class.forNa

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值