[英]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.