繁体   English   中英

Hololens 2 / MRTK / Unity / 以编程方式请求权限

[英]Hololens 2 / MRTK / Unity / Asking for permissions programmatically

是否可以检查应用程序是否具有权限以及是否在 Hololens 2 上以编程方式请求权限?

如果您错过了权限弹出窗口或错误地单击“否”,则有时在清单中已经声明了权限,该应用程序不再请求权限。

团结 2020.3.13f1

MRTK 2.7.3

- 更新 -

我在这里要求这个功能:

https://github.com/microsoft/MixedRealityToolkit-Unity/issues/10675

请支持请求!

要检查 HoloLens 2 上的麦克风和摄像头权限,我们可以利用 WinRT API MediaCapture 如果应用没有麦克风和摄像头权限,调用InitializeAsync方法时会抛出UnauthorizedAccessException

如果我们遇到此异常,则无法以编程方式重新请求许可。 我们应该让用户在设置中使用ms-settings:appsfeatures-app URI 再次授予我们所需的权限,这可以打开我们应用程序的高级设置页面。

#if ENABLE_WINMD_SUPPORT
using (MediaCapture mediaCapture = new MediaCapture())
    try
    {
        await mediaCapture.InitializeAsync();       
    }
    catch (UnauthorizedAccessException)
    {
        await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:appsfeatures-app"));
    }
#endif

检查权限的另一种方法是使用AppCapability Class CheckAccess方法将返回访问状态。 如果状态为DeniedByUser ,我们仍然需要使用ms-settings:appsfeatures-app URI 打开我们应用的高级设置页面,并让用户授予我们所需的权限。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM