使用 Unity 和 Vuforia 为 iOS 自定义相机权限通知

Custom camera permission notification for iOS with Unity and Vuforia

当用户未在 iOS 中授予对相机的访问权限时,我正在尝试在我的 Unity3D 游戏中创建自定义通知。我需要访问相机的原因是因为我使用 Vuforia。现在 Vuforia 处理了这个问题,当应用程序无法访问相机并显示一个非常丑陋的弹出窗口时,您将无法玩游戏。

问题是我的游戏有一些部分可以在不使用相机的情况下玩,因此我想删除 Vuforia 的通知并了解如何设置我自己的(我只需要知道要检查什么以便查看相机是否可以访问。

非常感谢!

PS: 我使用的是最新版本的 Unity3D 和 Vuforia。

所以我在没有 Vuforia 的情况下解决了它。我创建了一个小插件,它将检查游戏是否可以访问相机,如果没有,我将停用 ar 相机游戏对象,这样 Vuforia 就不会显示任何消息。完美运行。

如果您需要,这里是统一插件的代码。这包含一个检查相机权限的布尔函数以及一个将打开设置应用程序的函数。

#import <AVFoundation/AVFoundation.h>

bool HasCameraPermissions()
{
    AVAuthorizationStatus authStatus = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo];
    if(authStatus == AVAuthorizationStatusAuthorized)
        return true;
    else
        return false; 
}

void OpenSettings () {
    NSURL * url = [NSURL URLWithString: UIApplicationOpenSettingsURLString];
    [[UIApplication sharedApplication] openURL: url];
}

将其保存在 .m 文件中。