कार्य मोड पढ़ें
डिवाइस का वर्तमान WorkMode value पढ़ें।
आवश्यक शर्तें
- डिवाइस connected और ready है
- डिवाइस
DeviceWorkModeAPIsupport करता है
API संदर्भ
Framework
AIBuds.xcframework
Import
- Swift
- Objective-C
import AIBuds#import <AIBuds/AIBuds-Swift.h>
#import <AIBuds/AIBuds.h>प्रोटोकॉल
- Swift
- Objective-C
/// The protocol for device work mode API.
protocol DeviceWorkModeAPI: DeviceAPI {
/// The current work mode of the device.
var workMode: WorkMode { get }
}/// The protocol for device work mode API.
@protocol AIBudsDeviceWorkModeAPI <AIBudsDeviceAPI>
/// The current work mode of the device.
@property(nonatomic, readonly) enum AIBudsWorkMode workMode;
@endप्रॉपर्टी
| Property | Type | विवरण |
|---|---|---|
workMode | WorkMode / AIBudsWorkMode | डिवाइस द्वारा बताया गया वर्तमान work mode। |
रिटर्न वैल्यू
workMode synchronous read-only property है। यह completion handler उपयोग नहीं करती।
उपयोग के उदाहरण
- Swift
- Objective-C
import AIBuds
guard let device = device as? DeviceWorkModeAPI else {
print("Device does not support work modes")
return
}
switch device.workMode {
case .normal:
print("Normal mode")
case .game:
print("Game mode")
@unknown default:
print("Unknown work mode")
}#import <AIBuds/AIBuds-Swift.h>
#import <AIBuds/AIBuds.h>
id<AIBudsDeviceWorkModeAPI> device = (id<AIBudsDeviceWorkModeAPI>)self.device;
if (![device conformsToProtocol:@protocol(AIBudsDeviceWorkModeAPI)]) {
NSLog(@"Device does not support work modes");
return;
}
switch (device.workMode) {
case AIBudsWorkModeNormal:
NSLog(@"Normal mode");
break;
case AIBudsWorkModeGame:
NSLog(@"Game mode");
break;
default:
NSLog(@"Unknown work mode");
break;
}त्रुटि प्रबंधन
Asynchronous error result नहीं मिलता। Missing protocol conformance और unknown enum values संभालें।
सर्वोत्तम अभ्यास
- Property सीधे पढ़ें: Asynchronous get-work-mode wrapper न बनाएँ।
- Unknown Values संभालें: Forward compatibility के लिए unknown/default branch रखें।
- Device Updates देखें: SDK device delegate से work-mode change बताए तो UI refresh करें।
ध्यान दें
- Public SDK अभी
normalऔरgamework modes परिभाषित करता है। - Mode बदलने के लिए
setWorkMode(_:completion:)उपयोग होता है; यह इस read-only property से अलग है।