Физические элементы управления
В этом разделе описано чтение и изменение назначений между физическими действиями на устройстве и его функциями.
Возможности
Операции и функции
Справочник физических операций и назначаемых функций SDK
Просмотр назначения действий
Просмотр функций, назначенных физическим действиям устройства
Назначение функций
Назначение функции физическому действию устройства
Реализация с помощью AI
Разработка с AI
Реализуйте этот сценарий с AI
Используйте официальный навык «Управление физическими действиями AIBuds» и адаптируйте сценарий к приложению.
Прочитайте и выполните инструкции https://docs-aibuds.github.io/ru/skills/manage-aibuds-physical-operations. Используйте этот навык, чтобы реализовать «Управление физическими действиями AIBuds» в данном iOS-проекте и проверить результат.Начало работы
Чтобы настроить физические элементы управления:
- Подключите устройство — установите соединение с устройством AIBuds.
- Проверьте протокол — убедитесь, что устройство поддерживает
DevicePhysicalOperationsAPI. - Получите назначения — прочитайте
physicalOperationsMapping. - Назначьте функции — сопоставьте
DeviceFunctionсDeviceOperation.
Основные понятия
Назначения элементов управления
- Физические действия:
DeviceOperationописывает нажатия, длительные нажатия, жесты сенсорной панели, кнопки и поддерживаемые жесты скольжения. - Функции устройства:
DeviceFunctionопределяет назначаемые действия: воспроизведение, громкость, голосовой помощник, запись и камера. - Сопоставление:
physicalOperationsMappingхранит исходные значения операций и функций как ключи и значенияNSNumber.
Справочник протоколов
Физические действия доступны через DevicePhysicalOperationsAPI. Перед чтением или изменением назначений проверьте поддержку протокола:
- Swift
- Objective-C
guard let device = device as? DevicePhysicalOperationsAPI else {
print("Device does not support DevicePhysicalOperationsAPI")
return
}id<AIBudsDevicePhysicalOperationsAPI> device =
(id<AIBudsDevicePhysicalOperationsAPI>)self.device;
if (![device conformsToProtocol:@protocol(AIBudsDevicePhysicalOperationsAPI)]) {
NSLog(@"Device does not support AIBudsDevicePhysicalOperationsAPI");
return;
}Рекомендации
- Проверяйте протокол: всегда убеждайтесь, что устройство поддерживает требуемый протокол.
- Используйте данные устройства: показывайте только операции из
physicalOperationsMapping. - Обрабатывайте ошибки: проверяйте ошибки в обработчиках завершения.
- Сообщайте результат: уведомляйте пользователя об успешном обновлении назначений.
Примечания
- Доступные назначения зависят от модели устройства.
- Наличие варианта в
DeviceOperationилиDeviceFunctionне означает, что он поддерживается каждым устройством. - Операция или функция может не поддерживаться даже при наличии значения перечисления; проверяйте результат назначения.
- SDK предоставляет словарь, а не модель
KeyMappingили асинхронный метод получения назначений.