You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native 0.65.3中PermissionsAndroid缺失READ_MEDIA_IMAGES的解决办法

解决React Native 0.65.3适配Android 13图片读取权限的问题

由于React Native 0.65.3的PermissionsAndroid.PERMISSIONS未包含Android 13新增的READ_MEDIA_IMAGES权限常量,直接使用字符串字面量替代该常量即可,无需升级RN版本。

具体修改方案

将权限判断代码中的PermissionsAndroid.PERMISSIONS.READ_MEDIA_IMAGES替换为字符串'android.permission.READ_MEDIA_IMAGES',修改后的代码如下:

const permission = Platform.Version >= 33 
  ? 'android.permission.READ_MEDIA_IMAGES' 
  : PermissionsAndroid.PERMISSIONS.READ_EXTERNAL_STORAGE;

const hasPermission = await PermissionsAndroid.check(permission);

额外注意事项

  • 务必在AndroidManifest.xml中添加对应权限声明,区分不同Android版本:
    <!-- 适配Android 13及以上版本 -->
    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
    <!-- 兼容Android 12及以下版本,限制仅在32及以下SDK生效 -->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
    
  • 若需要主动请求权限,同样使用字符串形式的权限值,示例代码:
    const granted = await PermissionsAndroid.request(
      permission,
      {
        title: '图片读取权限申请',
        message: '需要访问您的相册以获取图片',
        buttonNeutral: '稍后再说',
        buttonNegative: '取消',
        buttonPositive: '允许',
      },
    );
    

内容的提问来源于stack exchange,提问作者gkeenley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 19:55:14