Можно ли запросить настройки конфиденциальности камеры для Windows 10?

Похоже, что обновление для Windows 10 от апреля изменило права доступа для таких устройств, как камера и микрофон, по умолчанию все ограничено ни одним.

https://privacy.microsoft.com/en-us/windows-10-camera-and-privacy

введите описание изображения здесь

Я использую камеру Realsense 435 и хочу уведомить пользователя, когда ему нужно настроить параметры конфиденциальности - что-то вроде "Перейти к настройкам конфиденциальности. Выберите вкладку" Камера "и включите" Разрешить приложениям доступ к вашей камере "".

Существует ли API для определения текущего состояния настроек конфиденциальности камеры?

2 ответа

Решение

Существует ли API для определения текущего состояния настроек конфиденциальности камеры?

Там нет встроенных API для вас, чтобы определить состояние настроек конфиденциальности камеры.

Но мы могли бы подумать об этом вопросе с другой стороны, если настройки камеры отключатся. Когда вы инициализируете объект камеры, он вызовет исключение в вашем коде.

Например: Разрешение камеры Line86 Если вы поймете исключение, вы можете запустить страницу настроек конфиденциальности для камеры, используя await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:privacy-webcam"));

public async Task InitializeCameraAsync()
{
        MediaCapture = new MediaCapture();
        MediaCapture.Failed += MediaCapture_Failed;

        try
        {
            await MediaCapture.InitializeAsync();
            _previewControl.Source = MediaCapture;
            await MediaCapture.StartPreviewAsync();
            IsPreviewing = true;
        }
        catch (UnauthorizedAccessException)
        {
            // This can happen if access to the camera has been revoked.
            MainPage.Current.NotifyUser("The app was denied access to the camera", NotifyType.ErrorMessage);
            await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:privacy-webcam"));
            await CleanupCameraAsync();
        }
}

Я искал то же самое, за исключением микрофона, и после изменения настроек и выполнения различий в реестре я обнаружил, что изменение этого параметра меняет Value между Allow а также Deny в

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\webcam\NonPackaged

Для камеры,

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\microphone\NonPackaged

Для микрофона.

В NonPackagedключи предназначены для настольных приложений. Вы можете переключить (или запросить) весь доступ к UWP в webcam key и каждое приложение UWP отдельно в своих подключах.

Другие вопросы по тегам