如何检查用户是否允许在UWP应用程序中访问摄像头?

时间:2018-04-16 16:03:53

标签: c# unity3d uwp camera

如何以编程方式检查UWP应用是否可以访问相机?如果用户拒绝访问相机,我正在尝试进行if检查以显示一些帮助文字。

我正试图通过Application.HasUserAuthorization在Unity中访问它,但这似乎没有给出正确的结果(例如,即使你拒绝访问它也会返回true

1 个答案:

答案 0 :(得分:2)

  

如何以编程方式检查UWP应用是否可以访问相机?

如果用户在设备的隐私设置中禁用了相机访问权限,则在尝试初始化相机时将抛出UnauthorizedAccessException。如果您忽略了为应用清单添加适当的功能,您还会在开发期间看到此异常。这样您就可以创建MediaCapture类的新实例并调用InitializeAsync来初始化捕获设备。例如,在没有摄像头的设备上,此方法可能会失败,因此您应该在try块中调用它。

// Initialize MediaCapture
try
{
    await _mediaCapture.InitializeAsync(settings); 

    _isInitialized = true;
}
catch (UnauthorizedAccessException ex)
{
    Debug.WriteLine("The app was denied access to the camera");
}

详情请查看this section