Как приложение Магазина Windows 8 (Javascript) может программно открывать панель "Разрешения"?

Я знаю, что мы можем программно открыть панель настроек приложения с помощью

Windows.UI.ApplicationSettings.SettingsPane.getForCurrentView().show()

и приложение создало панели настроек с помощью библиотеки WinJS.

Можно ли программно открыть панель системных настроек, например, панель настроек Разрешения (или Оценить и просмотреть)?

В Руководстве MSDN для устройств, которые получают доступ к личным данным, говорится (в разделе "Другие рекомендации для сообщений отзыва"):

  • Не пытайтесь программно запустить страницу "Разрешения" в окне "Настройки".

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

Обновление (24 апреля 2013 г.): найдено в книге " Программирование приложений для Windows 8 с помощью HTML, CSS и JavaScript", стр. 341 (Глава 8: Состояние, настройки, файлы и документы -> Панель настроек и пользовательский интерфейс -> Программный вызов всплывающих окон настроек) из прессы Microsoft:

Примечание. Хотя можно программно вызывать собственные панели настроек, этого нельзя сделать с помощью системных команд, таких как "Разрешения", "Оценить" и "Просмотр". Если у вас есть условие, для которого вам нужно, чтобы пользователь изменил разрешение, например, включение геолокации, рекомендуется отобразить сообщение об ошибке, которое указывает пользователю сделать это.

Это утверждение расходится с документом MSDN. Я до сих пор не знаю, какой из них является правдой.

3 ответа

Решение

В приведенном выше заявлении говорится, что вы можете предоставить свои собственные панели SETTINGS (например, с.showSettings()), но это не означает, что вы можете сделать это для Полномочий, а вы - нет.

Утверждения не противоречат друг другу: один говорит "не запускать панель разрешений", а другой - "Вы можете управлять своими собственными настройками".

Разрешения не являются вашими собственными настройками приложения, они контролируются разрешениями пользователя и ОС.

Я могу подтвердить ответ Адама. Приложение не может отображать панели настроек "Разрешения" и "Оценить" и "Просмотр", так как они заполняются Системой. Приложение может показать панель настроек, которую оно заполняет, используя метод showSettings в элементе управления "Параметры".

Для Windows 10 и 11 теперь вы можете запустить Windows Settingsприложение , включая определенное разрешение, которое вы хотите:

      bool result = await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings:privacy-webcam"));

В приведенном выше URL-адресе также перечислены все возможные схемы для приложения «Настройки».

Чтобы открыть настройки собственного приложения, позвоните:

      await Windows.System.Launcher.LaunchUriAsync(new("ms-settings:appsfeatures-app"));
Другие вопросы по тегам