android tf 读写,Android对于外置TF卡的读写操作(权限获取)

本文介绍了从Android 4.4开始如何使用存储访问框架(SAF)获取对外置SD卡的读写权限,并在Android 7.0时简化了这一过程。通过`StorageManager`获取`StorageVolume`实例,使用`createAccessIntent()`请求访问外部存储。在用户同意后,使用`getContentResolver().takePersistableUriPermission()`保存权限URI,以便后续访问。文章还提及了在不同设备上获取外置SD卡路径的差异。
摘要由CSDN通过智能技术生成

Android4.4(API级别19)引入了存储访问框架(SAF).SAF其中的部分功能就是通过其获取对外置sd卡的读写权限,从而操作外置sd卡.原文介绍连接,这里不对其进行复制粘贴,本帖直接讲述如何通过documentFile在获得SAF的后,在外置SD卡中读写数据.

Android 4.4提供了复杂的权限获取步骤,在android7.0时进行了简化.

StorageManager sm = (StorageManager) getSystemService(Context.STORAGE_SERVICE);

Listvolume = sm.getStorageVolumes();

int size = volume.size();

Log.i(TAG, "size: " + size);

for (int i = 1; i < size; i++) {

StorageVolume storageVolume = volume.get(i);

Intent intent = storageVolume.createAccessIntent(null);

startActivityForResult(intent, REQUEST_REQUEST_CODE);

}

上面的代码volume会返回内部存储和外部SD卡(我们所需要操作的卡,包括华为的NM卡),

使用 StorageManager 类获取适当的 StorageVolume 实例。然后,通过调用该实例的 StorageVolume.createAccessIntent() 方法创建一个 intent。使用此 int

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值