我的应用需要WRITE_EXTERNAL_STORAGE权限,此代码在Android 7(API级别25)上运行正常
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, READ_PERMISSION_CHECK);
else
continueLoading();
}
else {
continueLoading();
}
但是,使用相同的代码,我的应用无法获得Android 10(API级别29)上的权限。
我在清单中具有以下权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
这是怎么回事?
编辑:
compileSdkVersion 27
buildToolsVersion '27.0.3'
minSdkVersion 19
targetSdkVersion 27
1条答案
按热度按时间7gcisfzg1#
我不知道为什么,但下面的解决方案工作在API级别29:
我只是将
Manifest.permission.READ_EXTERNAL_STORAGE
替换为Manifest.permission.WRITE_EXTERNAL_STORAGE
。