android - 安卓6.0,获取手机的音乐文件(华为荣耀 7)?

 萧俊瑄俊明纬伦 发布于 2022-10-27 20:44
    ContentResolver musicResolver = getContentResolver();
    Uri musicUri = android.provider.MediaStore.Audio.Media.INTERNAL_CONTENT_URI;
    Cursor musicCursor = musicResolver.query(musicUri, null, null, null, null);

为什么我使用以上的代码获取不到我手机里面的音乐? 调试发现 musicResolver.query() 是这个函数有问题,然后进入这个函数后,发现内部的变量 cursor 为 null ,没有找到本地的音乐文件?那要用什么方法得到本地的音乐文件信息?

2 个回答
  • 直接使用MediaStore.Audio.Media. EXTERNAL_CONTENT_URI试下

    2022-10-29 02:15 回答
  • 可能是我这个手机的问题,今天我用同学的代码,结果在他的手机上就能获取到音乐,然后将代码下载到我的荣耀7 上就不行,我又把代码下到另外一个同学荣耀8 的手机上,结果也不行,果然是手机的问题,并不是代码的问题,然后我就去搜了下相关的文章,终于 被我找到了:

    // Storage Permissions
        private static final int REQUEST_EXTERNAL_STORAGE = 1;
        private static String[] PERMISSIONS_STORAGE = {
                Manifest.permission.READ_EXTERNAL_STORAGE,
                Manifest.permission.WRITE_EXTERNAL_STORAGE
        };
    public static void verifyStoragePermissions(Activity activity) {
            // Check if we have write permission
            int permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
    
            if (permission != PackageManager.PERMISSION_GRANTED) {
                // We don't have permission so prompt the user
                ActivityCompat.requestPermissions(
                        activity,
                        PERMISSIONS_STORAGE,
                        REQUEST_EXTERNAL_STORAGE
                );
            }
        }

    将上面的代码放到你要查找音乐文件的那个类里面,最后查找音乐时,调用上面那个方法就是了。上面的意思是 检查是否有相应的权限,如果没有相应的权限的话就提升权限(果然是权限问题,只是没想到的是 其他手机能正常运行,目前荣耀的两款手机不行运行,好坑,浪费我好多时间啊 ,,,)

    最后将一下代码放在 manifest 中。

        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    现在来说,应该就可以了,如果还不行,可以私信我。

    2022-10-29 02:16 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有