All-in-One 統合
AIBudsSDK/AllInOne は、SDK 一式を利用する製品向けの統合方法です。1 つの依存関係で、Core のデバイス対応、ABMate 接続、FitCloud Pro と Jieli の OTA プラグイン、ロギング、AI サービスプロバイダーとダッシュボード、オンデバイス音声アシスタント認証、クラッシュレポート、ライブ配信ミドルウェア、音声関連の依存関係、動画の手ぶれ補正が導入されます。
インストールと初期化のコードは、インストールとクイックスタートを参照してください。このページでは、この統合方法を選んだ場合のアーキテクチャ上の影響を説明します。
Animated workflow
SDK 一式の統合初期化
All-in-One が同梱実装を選択し、Core、AI の順に初期化してから、共有オーディオセッションの連携を開始します。
初期化によって設定される内容
AIBudsAllInOneSDK.initialize は Core に処理を渡すだけでなく、次の設定をまとめて行います。
- XLFacility ロギングプラグインを設定します。
- StarBurst と MLTCloud のデバイス認証ブリッジを登録します。
- オンデバイス音声アシスタントの認証ブリッジを登録します。
- 組み込みの動画手ぶれ補正プラグインを登録します。
- 同梱の FitCloud Pro と Jieli の OTA プロトコルプラグインを登録します。
AIBudsSDKを、ABMateSDKと指定された Core の設定/デリゲートで初期化します。- 同梱の StarBurst と MLTCloud のプロバイダー実装を使って
AIBudsAISDKを初期化します。 - 初期化の成功後、共有オーディオセッションコーディネーターを開始します。
Crash Reporter のインストールと AI Dashboard の起動は、引き続き明示的な操作が必要です。モジュールには含まれますが、initialize だけでは自動的に有効になりません。
All-in-One が適している場合
- 製品で SDK の機能群の大部分を利用する予定がある。
- バイナリサイズの細かな制御より、迅速な導入と統一された既定プラグイン構成を重視する。
- 同梱の AI サービスプロバイダーと組み込みの手ぶれ補正実装が製品方針に合っている。
- アプリケーションレベルの 1 つのオーナーが、グローバルなロギングとオーディオセッション設定を管理できる。
モジュール別統合が適している場合
- 必要なデバイス機能が一部だけである。
- アプリが独自の AI スタックまたは任意のメディア処理を提供する。
- バイナリサイズ、サードパーティの推移的依存関係、起動時の副作用を厳密に管理する必要がある。
- アプリがすでに独自の高度なオーディオセッション方針を持っている。
- セキュリティ方針により、対象から診断サーバーまたはクラッシュ収集を除外する必要がある。
二重初期化を避ける
All-in-One の初期化に成功した後は、AIBudsSDK や AIBudsAISDK を個別に初期化せず、All-in-One が選択済みのプラグインに別の実装を登録しないでください。機能コードでは別のグローバルオーナーを作らず、初期化済みの SDK 一式を使用します。
初期化が false を返した場合は、機能の起動に進まないでください。ログを確認し、失敗した Core または AI の段階を修正します。公開されている戻り値だけでは、失敗した依存関係を特定できません。
任意コンポーネントには個別の方針が必要
- レポート収集への同意、保存期間、アップロード方法を定義してから、Crash Reporter を起動初期にインストールします。
- AI Dashboard は、管理された診断用ビルドとネットワークでのみ起動します。
- ライブ配信は、アプリがプレーヤー/ストリーマーのクリーンアップを管理できる場合にのみ使用します。
- プラグインが事前登録されていても、手ぶれ補正の元ファイルへのフォールバックと保存方針を維持します。
導入チェックリスト
- 製品として All-in-One のすべての依存関係を採用することを確認した。
- アプリケーションレベルのオーナーから 1 回だけ初期化している。
- 初期化前に Core の設定とデリゲートを確定している。
- オーディオセッションの動作がホストアプリと整合している。
- Crash Reporter と AI Dashboard を個別の製品方針で制御している。
- Core、AI、プラグインを重複して初期化していない。
- 将来モジュール別統合へ切り替える場合の担当者と回帰テスト計画がある。