uni-app已在权限模块勾选了camera&gallery,但ios真机运行提示打包时未添加该模块

uni-app已在权限模块勾选了camera&gallery,但ios真机运行提示打包时未添加该模块

在项目的manifest.json中已经勾选了camera&gallery模块,并且制作了新的自定义基座,但是真机运行的时候要选择相机或者相册时候 都提示打包时未添加camera模块或者gallery模块

用的HBuilder的版本是3.8.7.20230703 最新正式版

开发环境 版本号 项目创建方式
HBuilder 3.8.7.20230703 新建项目

Image Image


更多关于uni-app已在权限模块勾选了camera&gallery,但ios真机运行提示打包时未添加该模块的实战教程也可以访问 https://www.itying.com/category-93-b0.html

13 回复

同样的问题,用了两年多的项目,给报这个?

更多关于uni-app已在权限模块勾选了camera&gallery,但ios真机运行提示打包时未添加该模块的实战教程也可以访问 https://www.itying.com/category-93-b0.html


我现在是理解了 那句 ”用hbuilderx写uniapp会不幸“ 是啥意思了。。。

回复 小王1126: 我可以了,兄弟,你重新打了基座之后,记得要把原来的基座删除了,再重新运行

回复 谭小谭: 先删掉是啊吧 也不行。。。 我整个项目都删了重打了

回复 小王1126: 模块勾上没

不行+1

请问怎么解决的呢

如果云打包直接勾选app模块配置Camera&Galleryios,离线要配sdk就不知道了

勾选了camera&gallery模块后,把原来打包出来的基座删掉,重新打包

解决了吗?

大家解决了吗,我是本地测试是好的,直接运行到ios手机是好的, 我正式打包以后 运行就不行了

如果是离线打包要配置对应的模块的

在uni-app中,如果你在权限模块已经勾选了camera和gallery,但在iOS真机运行时提示打包时未添加该模块,这通常意味着在iOS项目的配置中可能缺少了相应的权限声明或者模块配置。以下是一些可能的解决步骤和代码示例,以帮助你确保camera和gallery模块在iOS项目中正确配置。

1. 检查manifest.json

首先,确保在manifest.jsonmp-weixinapp-plus(取决于你的目标平台)配置中,已经勾选了camera和gallery权限。

"mp-weixin": {
    "requiredPrivateInfos": ["getUserInfo", "camera", "album"]
},
"app-plus": {
    "distribute": {
        "ios": {
            "permissions": ["camera", "photos"]
        }
    }
}

2. iOS原生配置

接下来,你需要检查iOS原生项目(通常位于uni-app项目根目录下的platforms/ios/文件夹)的配置。

2.1 Info.plist

确保Info.plist文件中包含了camera和photo library的权限请求。你可以手动编辑这个文件,或者使用Xcode的图形界面来添加。

<key>NSCameraUsageDescription</key>
<string>App需要访问您的相机</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>App需要访问您的照片库</string>

2.2 AppDelegate.m(或AppDelegate.swift

如果你需要在应用启动时检查或请求权限,你可以在AppDelegate中添加相关代码。以下是一个Objective-C的示例:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // 请求相机权限
    [AVCaptureDevice requestAccessForMediaType:AVMediaTypeVideo completionHandler:^(BOOL granted) {
        if (granted) {
            NSLog(@"相机权限被授予");
        } else {
            NSLog(@"相机权限被拒绝");
        }
    }];

    // 请求照片库权限
    [PHPhotoLibrary requestAuthorizationForAccessLevel:PHAccessLevelAddOnly completionHandler:^(PHAuthorizationStatus status) {
        if (status == PHAuthorizationStatusAuthorized) {
            NSLog(@"照片库权限被授予");
        } else {
            NSLog(@"照片库权限被拒绝");
        }
    }];

    return YES;
}

3. 重新编译并运行

在完成上述配置后,确保重新编译你的uni-app项目并运行在iOS真机上。如果配置正确,你的应用应该能够请求并使用相机和照片库功能。

通过这些步骤,你应该能够解决在iOS真机运行时提示打包时未添加camera和gallery模块的问题。如果问题仍然存在,建议检查uni-app和iOS项目的日志输出,以获取更详细的错误信息。

回到顶部