MediaPlayer.setDataSource()获得到正确的路径仍然无法播放

原报错如下:

java.io.FileNotFoundException: /storage/emulated/0/kgmusic/download/DAOKO、米津玄師 - 打上花火.mp3: open failed: EACCES (Permission denied)

解决办法

在这里插入图片描述
在清单文件AndroidMainfest.xml的application中添加android:requestLegacyExternalStorage="true"

记录一下踩过的坑

测试的手机是鸿蒙系统的,但是同样的代码在其他安卓手机上可以运行,在我的手机上就不行,以为是系统不同导致文件存储路径不同,但在网上找到能在我手机上运行的安卓音乐播放器,其实音频的存储路径是没有问题的。
对比代码后觉得是权限问题,在csdn搜了好久都没有符合情况的。
看到了一篇说是glide设置图片会对音频播放有影响,而我确实获取不了音频的专辑图片,所以又去看glide,但是引来更多的坑,发现图片获取失败也和权限有关,又回到权限问题。
这次去Stackoverflow搜了一下“open failed: EACCES (Permission denied)”然后就找到解决办法了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值