Поделиться через


DeviceServicingTrigger Класс

Определение

Представляет событие, которое приложение может активировать для запуска длительного обновления (встроенного ПО или параметров) устройства.

Windows 8.1 позволяет разрабатывать приложение UWP для периферийных устройств, которые обмениваются данными по USB, HID и Bluetooth. Например, пользователю может потребоваться синхронизировать содержимое на компьютере с устройством или с устройства или выполнить длительное обновление самого устройства, например обновление параметров или встроенного ПО. Windows 8.1 предоставляет две фоновые задачи и соответствующие API, которые позволяют синхронизировать и обновлять устройство в фоновом режиме: DeviceServicingTrigger и DeviceUseTrigger. В этом разделе приводятся справочные сведения об API для DeviceServicingTrigger. Сведения об использовании этого триггера в контексте приложения устройства см. в статье Синхронизация и обновление устройств UWP.

Фоновая задача DeviceServicingTrigger позволяет приложению UWP, взаимодействующим с периферийным устройством, выполнять длительные обновления устройства во время приостановки приложения, например передачу параметров или обновление встроенного ПО. Обновление устройства в фоновом режиме требует утверждения пользователем при каждом использовании фоновой задачи. В отличие от фоновой задачи DeviceUseTrigger , фоновая задача DeviceServicingTrigger позволяет перезагрузить устройство и отключиться, а также позволяет выполнять фоновые действия не более 30 минут.

Важно!

Этот триггер нельзя использовать с фоновыми задачами с одним процессом.

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
Наследование
Object Platform::Object IInspectable 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 , необязательное предполагаемое время выполнения фоновой задачи и необязательную строку для конкретного приложения, передаваемую фоновой задаче, определяющую, какую операцию устройства следует выполнить. Если приложение не может определить соответствующую оценку времени, укажите нулевое значение в качестве предполагаемого времени.

Применяется к

См. также раздел