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.

results matching ""

    No results matching ""