问题描述
首先确定自己运行的虚拟机的安卓版本,由于之前没有看自己是安卓11的,看很多人都是直接加权限在AndroidManifest.xml里面添加权限啊之类的,我也加了但是还是报错,在总结了很多经验后发现安卓11除了要添加权限之外,还有别的地方需要修改:
一、首先确定自己在Androidmanifest.xml文件里面添加了文件读取权限。
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!--安卓11还需要另外添加下面这条权限-->
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
二、在MainActivity中的onCreate()方法里面添加如下代码:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
if(!Environment.isExternalStorageManager()){
startActivity(new Intent(Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION));
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)