音楽コントロール概要
音楽コントロールは、接続中の AIBuds デバイスへ再生操作と再生音量のコマンドを送信します。
機能概要
音楽再生の操作
再生、曲送り、ミュート、再生音量を操作する
はじめに
- デバイスへ接続 - デバイスが接続され、使用可能になるまで待ちます。
- プロトコル準拠を確認 -
DeviceMusicControlAPIへの対応を確認します。 - コマンドを選択 - 再生、一時停止、前後の曲への移動、再生音量の調整から選びます。
- 完了結果を処理 - コマンドの成功が通知された後にアプリの UI を更新します。
主要な概念
再生コマンド
playMusicは再生を開始または再開します。pauseMusicは再生を一時停止します。playNextMusicとplayPreviousMusicは再生キュー内の曲を移動します。- 公開プロトコルには停止コマンドが定義されていません。
再生音量コマンド
musicVolumeUpとmusicVolumeDownは、デバイスが定義する 1 段階分だけ音量を変更します。muteとunmuteは再生音声のミュートを切り替えます。setMusicVolumeには 0〜100 の音量を指定します。
プロトコルリファレンス
音楽コントロールには DeviceMusicControlAPI からアクセスします。
- Swift
- Objective-C
guard let device = device as? DeviceMusicControlAPI else {
print("Device does not support DeviceMusicControlAPI")
return
}id<AIBudsDeviceMusicControlAPI> device = (id<AIBudsDeviceMusicControlAPI>)self.device;
if (![device conformsToProtocol:@protocol(AIBudsDeviceMusicControlAPI)]) {
NSLog(@"Device does not support AIBudsDeviceMusicControlAPI");
return;
}ベストプラクティス
- プロトコル準拠を確認:SDK には別途 Boolean 型の対応確認 API はありません。
- すべての完了結果を処理:
successを確認し、コマンド失敗時はerrorを表示します。 - スライダー入力を間引く:音量変更中のすべての中間値を送らないようにします。
- 再生状態の変化を監視:デバイス通知に合わせて UI を更新する場合は
didMediaPlayStatusChangedを使用します。
注意事項
- このプロトコルから、現在のプレイヤー、曲のメタデータ、再生キューは取得できません。
- コマンド成功は実行完了を示すだけで、再生状態が維持されることを保証しません。
- 音量に関する操作を含みますが、Volume Control と Music Control は別々のプロトコルです。