인증된 서비스 확인
연결된 기기에서 authorizedServices를 읽습니다.
API 참고
- Swift
- Objective-C
/// The protocol for device service authentication API.
protocol DeviceServiceAuthAPI: DeviceAPI {
/// A collection of currently authorized services.
var authorizedServices: AIBudsAuthorizedServices { get }
}/// The protocol for device service authentication API.
@protocol AIBudsDeviceServiceAuthAPI <AIBudsDeviceAPI>
/// A collection of currently authorized services.
@property(nonatomic, readonly) AIBudsAuthorizedServices authorizedServices;
@endAIBudsAuthorizedServices option set에는 현재 다음 값이 정의되어 있습니다.
| 플래그 | 의미 |
|---|---|
AIBudsAuthorizedServicesNone | 표시된 서비스 중 인증된 서비스가 없습니다. |
AIBudsAuthorizedServicesStarBurst | StarBurst AI가 인증되었습니다. |
AIBudsAuthorizedServicesOnDeviceVoiceAssistant | 오프라인 음성 비서가 인증되었습니다. |
사용 예제
- Swift
- Objective-C
guard let device = device as? DeviceServiceAuthAPI else { return }
let services = device.authorizedServices
let starBurstAuthorized = services.contains(.starBurst)
let voiceAssistantAuthorized = services.contains(.onDeviceVoiceAssistant)id<AIBudsDeviceServiceAuthAPI> device = (id<AIBudsDeviceServiceAuthAPI>)self.device;
if ([device conformsToProtocol:@protocol(AIBudsDeviceServiceAuthAPI)]) {
AIBudsAuthorizedServices services = device.authorizedServices;
BOOL starBurstAuthorized = (services & AIBudsAuthorizedServicesStarBurst) != 0;
BOOL voiceAssistantAuthorized =
(services & AIBudsAuthorizedServicesOnDeviceVoiceAssistant) != 0;
}향후 추가되는 알 수 없는 bit는 forward compatibility를 위한 데이터로 처리하고 전체 mask를 무효로 판단하지 마세요.