12/12/2024 11:37:55
问题描述
MSDKCore 中的 EXTERNAL_STORAGE 相关权限说明
解决方案
以下为 SD 卡,也就是外置存储器权限,属于敏感权限,并需要动态申请。MSDK 在此声明该权限,并未直接使用,仅用于兼容 API Level 19(Android 4.4) 以下机型。可能会给接入者带来困惑,如果需要处理,建议如下:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
方法一:
删除以上权限声明,并确保主 AndroidManifest 中关于最小 SDK 设置 minSdkVersion 为 19 或以上,示例:
<uses-sdk
android:minSdkVersion="19"
android:targetSdkVersion="28" />
如果是 gradle 构建,请在主工程的 build.gradle 确保:
android{
...
defaultConfig{
...
minSdkVersion 19
}
}
方法二:
修改为以下权限声明,添加 maxSdkVersion,使权限应用更加准确。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
MSDK 之所以没有直接添加 maxSdkVersion,是因为该配置会直接影响到最终打包,而接入者可能无感知。
以上情况,如果需要处理,请基于自己项目实际框架。
Copyright © 2024 MSDK.
All rights reserved.
All rights reserved.