AndroidScopedStorage和外部存储
创始人
2024-10-10 01:00:17
0

Android系统从Android 10开始,引入了Scoped Storage机制,该机制旨在加强安全性并限制对外部存储器的访问。它可以限制应用程序直接访问外部存储器根目录的权限,只有与应用程序关联的存储空间可以进行读写操作。这意味着,应用程序如果想要访问外部存储器,必须向用户请求权限。

下面是如何在Android应用程序中读取外部存储器的代码示例:

// 检查读写外部存储器的权限
if (ContextCompat.checkSelfPermission(
    context, Manifest.permission.READ_EXTERNAL_STORAGE)
        == PackageManager.PERMISSION_GRANTED) {

    // 如果用户已经授权,则开始读写存储

} else {

    // 如果用户没有授权,则向用户请求授权
    ActivityCompat.requestPermissions(
        activity,
        new String[] { Manifest.permission.READ_EXTERNAL_STORAGE },
        MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE
    );
}

// 处理用户的权限请求响应
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
    switch (requestCode) {
        case MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE: {
            if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {

                // 如果用户已经同意访问外部存储器,则开始读写存储

            } else {

                // 如果用户拒绝访问外部存储器,则向用户显示一条消息

            }
            return;
        }
    }
}

而如果我们希望使用Scoped Storage机制的话,我们可以通过类似以下代码的方式来读取外部存储器:

// 获取与应用程序关联的存储空间的根目录
File file = context.getExternalFilesDir(Environment.DIRECTORY_PICTURES);

// 读取该存储空间下图片文件的内容并展示
List pictureFilesList

相关内容

热门资讯

第三方技巧!大菠萝辅助器,hh... 第三方技巧!大菠萝辅助器,hhpoker德州作弊,方式教程(有挂秘笈)1、hhpoker德州作弊公共...
近期!佛手大菠萝辅助,智星菠萝... 近期!佛手大菠萝辅助,智星菠萝有挂吗,步骤教程(真的有挂)1)佛手大菠萝辅助有没有挂:进一步探索佛手...
为切实保障!wepoker怎么... 您好,wepoker怎么下载游戏这款游戏可以开挂的,确实是有挂的,需要了解加去威信【13670430...
长期以来!wepoker怎么发... 长期以来!wepoker怎么发冤家牌,hhpoker是正品吗,模板教程(有挂秘诀)wepoker怎么...
截至发稿!wepoker透视底... 截至发稿!wepoker透视底牌,wepoker究竟有没有透视,法子教程(揭秘有挂)1、wepoke...
近期!hhpoker真的有透视... 近期!hhpoker真的有透视吗,pokemmo手机版修改器,指南教程(证实有挂)1、不需要AI权限...
黑科技代打!wepoker私人... 黑科技代打!wepoker私人局辅助,竞技联盟辅助,操作教程(有挂方略)1、玩家可以在wepoker...
黑科技辅助挂!hhpoker透... 您好,德州来玩辅助器这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054】很多玩家...
反观!wepoker透视脚本是... 反观!wepoker透视脚本是什么,werplan外挂,妙计教程(有挂教学)所有人都在同一条线上,像...
黑科技辅助挂!hhpoker必... 黑科技辅助挂!hhpoker必备开挂,德州透视hhpoker,课程教程(了解有挂)1、hhpoker...