本体操作の概要
このセクションでは、AIBuds デバイスの物理的な入力操作と、実行する機能との割り当てを取得・変更する方法を説明します。
利用できる機能
操作と機能
SDK が提供する物理操作と、割り当て可能な機能のリファレンス
操作割り当ての確認
デバイスの物理ボタン/タッチ操作と機能の割り当てを取得
機能の割り当て
デバイスの物理ボタン/タッチ操作に機能を割り当て
AI を活用して実装
AI で実装
AI でこのワークフローを実装
公式の「AIBuds 物理操作の管理」スキルを使い、アプリに合わせて実装します。
https://docs-aibuds.github.io/ja/skills/manage-aibuds-physical-operations を読み、その指示に従ってください。このスキルで「AIBuds 物理操作の管理」をこの iOS プロジェクトに実装し、検証してください。はじめに
- デバイスに接続 - AIBuds デバイスとの接続を確立します。
- プロトコル準拠を確認 - デバイスが
DevicePhysicalOperationsAPIに準拠していることを確認します。 - 操作の割り当てを確認 -
physicalOperationsMappingを取得します。 - 機能を割り当て -
DeviceFunctionを対応するDeviceOperationに割り当てます。
主要概念
ボタンの割り当て
- 本体操作:
DeviceOperationは、クリック、長押し、タッチパネルのジェスチャー、ボタン操作、対応するスライド操作を表します。 - デバイス機能:
DeviceFunctionは、再生、音量、音声アシスタント、録音、カメラなど、割り当て可能な動作を定義します。 - 割り当て:
physicalOperationsMappingは、操作と機能の raw value を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モデルや非同期の割り当て取得メソッドではありません。