음악 제어 개요
음악 제어 기능은 연결된 AIBuds 기기로 재생 및 재생 음량 명령을 전송합니다.
기능 개요
음악 재생 제어
Control playback, track navigation, muting, 및 playback volume
시작하기
- 기기 연결 - 기기가 연결되어 사용할 수 있을 때까지 기다립니다.
- 프로토콜 확인 -
DeviceMusicControlAPI지원 여부를 확인합니다. - 명령 선택 - 재생, 일시 정지, 이전·다음 곡 선택 또는 재생 음량 조절 명령을 선택합니다.
- 완료 처리 - 명령이 성공한 뒤 앱 UI를 업데이트합니다.
핵심 개념
재생 명령
playMusic은 재생을 시작하거나 다시 시작합니다.pauseMusic은 재생을 일시 정지합니다.playNextMusic과playPreviousMusic은 재생 목록에서 다음 곡 또는 이전 곡으로 이동합니다.- 공개 프로토콜에는 재생 중지 명령이 정의되어 있지 않습니다.
재생 음량 명령
musicVolumeUp과musicVolumeDown은 기기가 정의한 한 단계만큼 음량을 조절합니다.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를 처리하세요. - 슬라이더 입력 debounce: 슬라이더가 움직일 때 모든 중간 음량 값을 전송하지 마세요.
- 재생 상태 관찰: UI가 기기 알림을 따라야 하면
didMediaPlayStatusChanged를 사용하세요.
참고
- 이 프로토콜은 현재 재생 앱, 곡 메타데이터 또는 재생 목록을 제공하지 않습니다.
- 명령 성공은 명령이 실행되었음을 의미하며 재생 상태가 계속 유지됨을 보장하지 않습니다.
- 음량 관련 동작이 포함되어 있어도 Volume Control과 Music Control은 서로 다른 프로토콜입니다.