我想把照片保存到相册,但在RN Expo上遇到了这个错误

移动开发 2026-07-11
 ERROR  Capture error: [Error: Call to function 'ExpoMediaLibrary.requestPermissionsAsync' has been rejected.
→ Caused by: You have requested the AUDIO permission, but it is not declared in AndroidManifest. Update expo-media-library config plugin to include the permission before requesting it.] 

Code: construct.js
  2 | var setPrototypeOf = require("./setPrototypeOf.js");
  3 | function _construct(t, e, r) {
> 4 |   if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);
    |                                                                 ^
  5 |   var o = [null];
  6 |   o.push.apply(o, e);
  7 |   var p = new (t.bind.apply(t, o))();
Call Stack
  construc

我尝试了好几种解决方案,但似乎还没搞清楚问题出在哪儿。我正在使用expo-media-library。我也更新了app.json,让其中包含了所有需要的权限,但还是不起作用。

我正在尝试把从相机拍摄并在图片上叠加了一些覆盖层后生成的图片保存到手机图库。

{
  "expo": {
    "android": {
      "adaptiveIcon": {
      },
      "edgeToEdgeEnabled": true,
      "predictiveBackGestureEnabled": false,
      "permissions": [
        "android.permission.CAMERA",
        "android.permission.RECORD_AUDIO",
        "android.permission.ACCESS_COARSE_LOCATION",
        "android.permission.ACCESS_FINE_LOCATION",
        "android.permission.READ_EXTERNAL_STORAGE",
        "android.permission.WRITE_EXTERNAL_STORAGE",
        "android.permission.READ_MEDIA_VISUAL_USER_SELECTED",
        "android.permission.READ_MEDIA_IMAGES",
        "android.permission.READ_MEDIA_VIDEO",
        "android.permission.READ_MEDIA_AUDIO"
      ],
      "package": "com.ck34.GeoImg"
    },
  ...
    "plugins": [
      [
        "expo-media-library",
        {
          "photosPermission": "Allow GeoImg to access your photos",
          "savePhotosPermission": "Allow GeoImg to save photos",
          "isAccessMediaLocationEnabled": true,
          "audioPermission": true
        }
      ]
    ],

}

enter image description here

解决方案

你也需要添加以下权限吗?

这是一项音频权限,以防万一。

android.permission.MODIFY_AUDIO_SETTINGS

如果你在使用 Android 11+,你还需要以下权限

android.permission.MANAGE_EXTERNAL_STORAGE

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章