UWP控制面板应用程序设置

时间:2018-07-31 01:45:58

标签: c# windows uwp

如果我在应用程序清单(例如麦克风)中声明了权限,是否可以检查用户是否已启用此权限,以及是否在用户同意更改权限的情况下更改权限?

这是针对用C#编写的UWP应用程序,以允许cortana与应用程序进行交互

1 个答案:

答案 0 :(得分:1)

  

是否可以检查用户是否已启用此权限?

在try-catch块中调用MediaCapture.InitializeAsync方法,在MediaCaptureInitializationSettings参数中指定要初始化麦克风。如果是第一次使用此API,它将启动一个同意提示,以获取用户对应用程序访问麦克风的许可。如果用户已经拒绝授予权限,则会出现异常。

  

如果用户同意更改权限,可以更改权限吗?

不。对此拥有完全控制权的是用户,没有API可以更改权限。试想一下,如果存在这样的API,有多少个应用程序会在未经用户同意的情况下秘密地授予自己访问权限。

但是,如果某种程度上关闭了检测权限,则可以将Settings应用程序启动到Privacy -> Microphone页面,以便用户可以在那里轻松地授予权限。同样,用户对此拥有完全控制权。

await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:privacy-microphone"));