작업 상태 조회
기기의 현재 WorkState를 읽습니다.
사전 요구 사항
- 기기가 연결되어 있습니다.
- 기기가
DeviceWorkStateAPI를 지원합니다.
API 참고
프레임워크
AIBuds.xcframework
가져오기
- Swift
- Objective-C
import AIBuds#import <AIBuds/AIBuds-Swift.h>
#import <AIBuds/AIBuds.h>프로토콜
- Swift
- Objective-C
/// The protocol for device work state API.
protocol DeviceWorkStateAPI: DeviceAPI {
/// The current working state of the device.
var workState: WorkState { get }
}/// The protocol for device work state API.
@protocol AIBudsDeviceWorkStateAPI <AIBudsDeviceAPI>
/// The current working state of the device.
@property(nonatomic, readonly) enum AIBudsWorkState workState;
@end속성
| 속성 | 타입 | 설명 |
|---|---|---|
workState | WorkState / AIBudsWorkState | 기기가 보고한 현재 작업 상태입니다. |
반환 값
workState는 동기식 읽기 전용 속성이며 여러 값을 포함하는 상태 모델을 반환하지 않습니다.
사용 예제
- Swift
- Objective-C
import AIBuds
guard let device = device as? DeviceWorkStateAPI else {
print("Device does not expose a work state")
return
}
let state = device.workState
print("Current work state: \(state.description)")#import <AIBuds/AIBuds-Swift.h>
#import <AIBuds/AIBuds.h>
id<AIBudsDeviceWorkStateAPI> device = (id<AIBudsDeviceWorkStateAPI>)self.device;
if (![device conformsToProtocol:@protocol(AIBudsDeviceWorkStateAPI)]) {
NSLog(@"Device does not expose a work state");
return;
}
NSLog(@"Current work state raw value: %ld", (long)device.workState);오류 처리
completion handler나 오류 결과는 없습니다. 프로토콜 미지원과 unknown 또는 reserved enum case를 처리하세요.
권장 사항
- 속성을 직접 읽기: 이 API를 비동기 상태 요청으로 구현하지 마세요.
- 일시적인 상태로 처리: 기기의 현재 활동을 표시할 때 다시 읽으세요.
- 모든 enum case 처리: 작업 상태에는 연결, 통화, 재생, 촬영, 전송, 스트리밍, OTA, 종료 및 테스트 활동이 포함됩니다.
참고
WorkState는 단일 enum 값이며 배터리, 충전, 착용 또는 재생 관련 필드를 포함하지 않습니다.- SDK에는
WorkStatus결과 모델이나getWorkStatus메서드가 정의되어 있지 않습니다.