DeviceServicingTrigger Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет событие, которое приложение может активировать для запуска длительного обновления (встроенного ПО или параметров) устройства.
Windows 8.1 позволяет разрабатывать приложение UWP для периферийных устройств, которые обмениваются данными по USB, HID и Bluetooth. Например, пользователю может потребоваться синхронизировать содержимое на компьютере с устройством или с устройства или выполнить длительное обновление самого устройства, например обновление параметров или встроенного ПО. Windows 8.1 предоставляет две фоновые задачи и соответствующие API, которые позволяют синхронизировать и обновлять устройство в фоновом режиме: DeviceServicingTrigger и DeviceUseTrigger. В этом разделе приводятся справочные сведения об API для DeviceServicingTrigger. Сведения об использовании этого триггера в контексте приложения устройства см. в статье Синхронизация и обновление устройств UWP.
Фоновая задача DeviceServicingTrigger позволяет приложению UWP, взаимодействующим с периферийным устройством, выполнять длительные обновления устройства во время приостановки приложения, например передачу параметров или обновление встроенного ПО. Обновление устройства в фоновом режиме требует утверждения пользователем при каждом использовании фоновой задачи. В отличие от фоновой задачи DeviceUseTrigger , фоновая задача DeviceServicingTrigger позволяет перезагрузить устройство и отключиться, а также позволяет выполнять фоновые действия не более 30 минут.
- Дополнительные сведения о требованиях к политике фоновой задачи DeviceServicingTrigger можно найти в разделе этой страницы.
- Сведения об использовании DeviceServicingTrigger см. в статье Синхронизация и обновление устройств для приложений UWP.
- Сведения об использовании DeviceUseTrigger см. в разделе Доступ к датчикам и устройствам из фоновой задачи.
Важно!
Этот триггер нельзя использовать с фоновыми задачами с одним процессом.
public ref class DeviceServicingTrigger sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DeviceServicingTrigger final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class DeviceServicingTrigger final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DeviceServicingTrigger
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class DeviceServicingTrigger
function DeviceServicingTrigger()
Public NotInheritable Class DeviceServicingTrigger
- Наследование
- Атрибуты
- Реализации
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Комментарии
Некоторые политики применяются Windows для обеспечения согласия пользователя при обновлении периферийных устройств. Дополнительные политики применяются для сохранения уровня заряда батареи при синхронизации и обновлении периферийных устройств. Фоновая задача DeviceServicingTrigger регулируется следующими политиками:
- Фоновая задача DeviceServicingTrigger требует согласия пользователя при каждом запуске.
- Устройство должно быть подключено или связано с компьютером и доступно при запросе DeviceServicingTrigger.
- Приложению разрешено не более 30 минут (настенные часы) фоновой активности для обновлений устройств с помощью DeviceServicingTrigger
- Приложению не разрешено запрашивать фоновую задачу DeviceServicingTrigger , пока приложение не находится на переднем плане.
- Приложение может одновременно запускать только один DeviceServicingTrigger . Попытка создать второй Объект DeviceServicingTrigger вызовет исключение.
- Аккумулятор компьютера должен иметь более 33 % емкости, или компьютер должен быть включен в режиме A/C.
- Фоновые задачи DeviceServicingTrigger могут быть отменены Windows, если эти требования политики больше не выполняются, включая максимальное количество фонового времени настенных часов.
Примечание
Приложение UWP, которое планирует использовать фоновую задачу DeviceServicingTrigger , также должно быть привилегированным приложением для устройства. Привилегия приложения указывается изготовителем устройства в метаданных для периферийного устройства. Когда приложение UWP пытается активировать фоновую задачу DeviceServicingTrigger , Windows проверяет, является ли вызывающее приложение привилегированным приложением для устройства, которое пытается обновить. Если приложение не является привилегированным для устройства, Windows не разрешает запуск фоновой задачи.
Подробные сведения о привилегиях приложений и проверках политики, применяемых Windows для фоновой задачи DeviceServicingTrigger , см. в статье Синхронизация и обновление устройств UWP.
Конструкторы
DeviceServicingTrigger() |
Конструктор для DeviceServicingTrigger. Не принимает параметров. |
Методы
RequestAsync(String, TimeSpan) |
Активирует фоновую задачу (параметры или обновление встроенного ПО) и возвращает DeviceTriggerResult , указывающее на успешное выполнение или сбой запроса триггера. Принимает строку DeviceInformation.ID и необязательное предполагаемое время выполнения фоновой задачи. Если приложение не может определить соответствующую оценку времени, укажите нулевое значение в качестве предполагаемого времени. |
RequestAsync(String, TimeSpan, String) |
Активирует фоновую задачу (параметры или обновление встроенного ПО) и возвращает DeviceTriggerResult , указывающее на успешное выполнение или сбой запроса триггера. Принимает строку DeviceInformation.ID , необязательное предполагаемое время выполнения фоновой задачи и необязательную строку для конкретного приложения, передаваемую фоновой задаче, определяющую, какую операцию устройства следует выполнить. Если приложение не может определить соответствующую оценку времени, укажите нулевое значение в качестве предполагаемого времени. |