動作状態概要
このセクションでは、デバイスが現在行っている処理をリアルタイムで確認するための動作状態 API について説明します。
機能概要
動作状態
デバイスから通知されるすべての WorkState 値を確認する
動作状態の取得
AIBuds デバイスの現在の動作状態を取得
AI を活用して実装
AI で実装
AI でこのワークフローを実装
公式の「AIBuds 動作状態とモードの管理」スキルを使い、アプリに合わせて実装します。
https://docs-aibuds.github.io/ja/skills/manage-aibuds-work-state-and-mode を読み、その指示に従ってください。このスキルで「AIBuds 動作状態とモードの管理」をこの iOS プロジェクトに実装し、検証してください。はじめに
動作状態を監視する手順は次のとおりです。
- デバイスへ接続 - AIBuds デバイスとの接続を確立します。
- プロトコル準拠を確認 - デバイスが
DeviceWorkStateAPIに準拠していることを確認します。 - 状態を取得 - 現在の
workStateプロパティを読み取ります。 - 変更を監視 - デバイスデリゲートに
device(_:didWorkStateChanged:)を実装します。
主要な概念
動作状態
WorkState の全定義は動作状態一覧を参照してください。値は次のグループに分かれます。
- 接続と待機:接続待ち、接続済み待機、未接続待機。
- 再生とコミュニケーション:ローカル音楽再生、通話、AI 対話。
- 撮影・録音と転送:写真撮影、動画/音声録音、ファイル転送、ストリーミング。
- メンテナンス:工場出荷時設定へのリセット、OTA アップデート、シャットダウン、デバイステスト。
プロトコルリファレンス
動作状態機能には DeviceWorkStateAPI プロトコルからアクセスします。
- Swift
- Objective-C
guard let device = device as? DeviceWorkStateAPI else {
print("Device does not support DeviceWorkStateAPI")
return
}id<AIBudsDeviceWorkStateAPI> device = (id<AIBudsDeviceWorkStateAPI>)self.device;
if (![device conformsToProtocol:@protocol(AIBudsDeviceWorkStateAPI)]) {
NSLog(@"Device does not support AIBudsDeviceWorkStateAPI");
return;
}ベストプラクティス
- プロトコル準拠を確認:デバイスが
DeviceWorkStateAPIに対応していることを必ず確認します。 - 状態を監視:状態変化時はデバイスデリゲートコールバックから UI を更新します。
- 状態遷移を処理:デバイスの状態変化に応じて適切に処理します。
- 競合を回避:現在の状態と競合する操作を開始しないでください。
注意事項
- 動作状態から、デバイスの処理内容をリアルタイムに確認できます。
- 動作状態の変化は、オプションのデバイスデリゲートコールバックから通知されます。
- 状態によっては、一部の操作を実行できない場合があります。