본문으로 건너뛰기

착용 감지 개요

착용 감지 기능은 기기의 지원 수준, 활성화 상태 및 현재 좌우 착용 상태를 제공합니다. 설정 가능한 기기에서는 SDK를 통해 착용 감지를 켜거나 끌 수 있습니다.

기능 개요

AI를 활용해 구현

AI로 구현

AI로 이 워크플로 구현

공식 “AIBuds 착용 감지 관리” 스킬을 사용해 앱에 맞게 구현하세요.

https://docs-aibuds.github.io/ko/skills/manage-aibuds-wear-detection을 읽고 지침을 따르세요. 이 스킬로 “AIBuds 착용 감지 관리”을 이 iOS 프로젝트에 구현하고 검증하세요.
공식 스킬 보기

시작하기

  1. 기기 연결 - 기기가 연결되어 사용할 수 있을 때까지 기다립니다.
  2. 프로토콜 확인 - DeviceWearDetectionAPI 지원 여부를 확인합니다.
  3. 지원 수준 확인 - wearDetectionCapability로 착용 감지 지원 및 설정 가능 여부를 확인합니다.
  4. 현재 상태 확인 - isWearDetectionEnabledwearStatus를 읽습니다.
  5. 지원되는 경우에만 설정 - 설정 가능한 기기에서만 setWearDetection(enabled:completion:)을 호출합니다.

핵심 개념

지원 수준

WearDetectionCapability는 다음 세 가지 지원 수준을 구분합니다.

의미
.none착용 감지를 지원하지 않습니다.
.supportedNotConfigurable착용 감지를 지원하지만 이 API로 활성화 상태를 변경할 수 없습니다.
.supportedAndConfigurable착용 감지를 지원하며 켜거나 끌 수 있습니다.

상태

  • isWearDetectionEnabled는 착용 감지의 현재 활성화 여부를 나타냅니다.
  • WearStatus는 알 수 없음, 미착용, 왼쪽만 착용, 오른쪽만 착용 또는 양쪽 착용 상태를 나타냅니다.
  • 지원 수준, 활성화 상태 및 착용 상태는 서로 별개의 값입니다. 한 값으로 다른 값을 추정하지 마세요.

프로토콜 참고

착용 감지 기능은 DeviceWearDetectionAPI를 통해 사용합니다.

Swift
guard let device = device as? DeviceWearDetectionAPI else {
    print("Device does not support DeviceWearDetectionAPI")
    return
}

권장 사항

  1. 설정 전 지원 수준 확인: .supportedAndConfigurable인 경우에만 활성화 상태를 변경하세요.
  2. 현재 속성 사용: 존재하지 않는 조회 메서드를 만들지 말고 SDK의 현재 스냅샷 속성을 읽으세요.
  3. 변경 관찰: 활성화 상태와 착용 상태 변경은 DeviceDelegate 콜백에서 처리하세요.
  4. 알 수 없음 상태 구분: .unknown.notWearing과 구분하세요.

참고

  • SDK에 enum case가 있어도 모든 기기가 해당 기능을 지원한다는 의미는 아닙니다.
  • SDK는 착용 상태 변경에 따른 자동 재생 동작을 보장하지 않습니다. 앱 동작은 제품 요구 사항에 맞게 구현하세요.
  • SDK Demo는 DeviceWearDetectionAPI에서 지원 수준과 활성화 상태를 읽고 설정 가능한 경우에만 설정 UI를 표시합니다.