OStack程序员社区-中国程序员成长平台

标题: ios - 为什么我的 iOS 应用程序不询问用户访问相机的权限? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 13:00
标题: ios - 为什么我的 iOS 应用程序不询问用户访问相机的权限?

我开发 iOS 应用程序,它使用相机。 AVCaptureDeviceInput 用于连接相机。 我检查了授权状态为

- (void)checkDeviceAuthorizationStatus
{
    NSString *mediaType = AVMediaTypeVideo;

    [AVCaptureDevice requestAccessForMediaType:mediaType completionHandler:^(BOOL granted) {
        if (granted)
        {
            //Granted access to mediaType
            [self setDeviceAuthorized:YES];
        }
        else
        {
            //Not granted access to mediaType
            dispatch_async(dispatch_get_main_queue(), ^{
                [[[UIAlertView alloc] initWithTitle"AVCam!"
                                            message"AVCam doesn't have permission to use Camera, please change privacy settings"
                                           delegate:self
                                  cancelButtonTitle"OK"
                                  otherButtonTitles:nil] show];
                [self setDeviceAuthorized:NO];
            });
        }
    }];
}

当我启动应用程序时,为什么它没有询问用户访问相机的权限? 因此该应用程序不会出现在设置/隐私/相机中以手动允许访问相机。 然后显示此错误“AVCam没有使用相机的权限,请更改隐私设置”并且应用无法使用相机。

编辑: 这意味着未经用户许可,不允许该应用访问相机。 不仅是相机,相机胶卷也有同样的问题。

所有这些事情都是在我重置设置/重置/重置所有设置中的设置后发生的。在此之前,该应用运行良好。



Best Answer-推荐答案


问题现在解决了。我需要一步一步地追溯并花了我很长时间来解决问题。 有人建议包括 NSCamerausageDescription 键。实际上对于 iOS 7 及更高版本的设备是必需的。我包含了 key ,但尚未询问用户权限。 最后我在 Info.plist 发现了问题。 有一些额外的行,我删除了三行。不确定它们与我的问题有什么关系。 我删除的是

(1)获取信息字符串

(2)捆绑显示名称

(3)应用类别

删除 info.plist 中的这三行后。然后应用程序询问用户权限。关键是您可能需要检查您的 Info.plist 是否存在此类问题。

关于ios - 为什么我的 iOS 应用程序不询问用户访问相机的权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35500405/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4