Standart Ses Kaydı
Bağlı aygıttan standart ses kaydı oturumunu başlatmasını veya durdurmasını isteyin.
Ön Koşullar
- Aygıt bağlı ve hazırdır.
- Aygıt
DeviceAudioRecordingAPIprotokolüne uyar. - Aygıtta kayıt için yeterli depolama alanı vardır.
API Reference
Framework
AIBuds.xcframework
Import
- Swift
- Objective-C
import AIBuds#import <AIBuds/AIBuds-Swift.h>
#import <AIBuds/AIBuds.h>Protokol
İstekler DeviceAudioRecordingAPI tarafından tanımlanır.
- Swift
- Objective-C
/// The protocol for device API that supports audio recording.
protocol DeviceAudioRecordingAPI: DeviceAPI {
/// Requests the device to start an audio recording session.
/// - Parameters:
/// - completion: A closure that is called when the operation completes.
/// - success: `true` if the operation was successful; otherwise `false`.
/// - statusCode: The status code returned by the device. `nil` if the operation failed.
/// - error: An `NSError` object that describes the error that occurred, or `nil` if the operation was successful.
func requestStartAudioRecording(_ completion: AIBudsStatusCodeCompletionHandler?)
/// Requests the device to stop the current audio recording session.
/// - Parameters:
/// - completion: A closure that is called when the operation completes.
/// - success: `true` if the operation was successful; otherwise `false`.
/// - statusCode: The status code returned by the device. `nil` if the operation failed.
/// - error: An `NSError` object that describes the error that occurred, or `nil` if the operation was successful.
func requestStopAudioRecording(_ completion: AIBudsStatusCodeCompletionHandler?)
}/// The protocol for device API that supports audio recording.
@protocol AIBudsDeviceAudioRecordingAPI <AIBudsDeviceAPI>
/// Requests the device to start an audio recording session.
/// - Parameters:
/// - completion: A closure that is called when the operation completes.
/// - success: `true` if the operation was successful; otherwise `false`.
/// - statusCode: The status code returned by the device. `nil` if the operation failed.
/// - error: An `NSError` object that describes the error that occurred, or `nil` if the
/// operation was successful.
- (void)requestStartAudioRecordingWithCompletion:
(AIBudsStatusCodeCompletionHandler _Nullable)completion;
/// Requests the device to stop the current audio recording session.
/// - Parameters:
/// - completion: A closure that is called when the operation completes.
/// - success: `true` if the operation was successful; otherwise `false`.
/// - statusCode: The status code returned by the device. `nil` if the operation failed.
/// - error: An `NSError` object that describes the error that occurred, or `nil` if the
/// operation was successful.
- (void)requestStopAudioRecordingWithCompletion:
(AIBudsStatusCodeCompletionHandler _Nullable)completion;
@endÖrnek Yöntemleri
| Yöntem | Amaç |
|---|---|
requestStartAudioRecording | Aygıttan kaydı başlatmasını ister. |
requestStopAudioRecording | Aygıttan kaydı durdurmasını ister. |
Tamamlanma Değerleri
| Ad | Tür | Açıklama |
|---|---|---|
success | Bool / BOOL | İsteğin başarılı olup olmadığı. |
statusCode | NSNumber? | Aygıtın döndürdüğü durum kodu; işlem başarısızsa nil. |
error | NSError? | Hata ayrıntıları; başarılıysa nil. |
Yöntemler kayıt dosyası yolu döndürmez. Sonuç, aygıt komutunun durumudur.
Kullanım Örnekleri
- Swift
- Objective-C
import AIBuds
guard let device = device as? DeviceAudioRecordingAPI else {
print("Device does not support audio recording")
return
}
device.requestStartAudioRecording { success, statusCode, error in
guard success else {
print("Start failed: \(error?.localizedDescription ?? "Unknown error")")
return
}
print("Recording started, status: \(statusCode?.stringValue ?? "Unavailable")")
}
// Call this from the UI action that stops the active recording.
device.requestStopAudioRecording { success, statusCode, error in
guard success else {
print("Stop failed: \(error?.localizedDescription ?? "Unknown error")")
return
}
print("Recording stopped, status: \(statusCode?.stringValue ?? "Unavailable")")
}#import <AIBuds/AIBuds-Swift.h>
#import <AIBuds/AIBuds.h>
id<AIBudsDeviceAudioRecordingAPI> device = (id<AIBudsDeviceAudioRecordingAPI>)self.device;
if (![device conformsToProtocol:@protocol(AIBudsDeviceAudioRecordingAPI)]) {
NSLog(@"Device does not support audio recording");
return;
}
[device requestStartAudioRecordingWithCompletion:^(
BOOL success, NSNumber *_Nullable statusCode, NSError *_Nullable error) {
if (!success) {
NSLog(@"Start failed: %@", error.localizedDescription);
return;
}
NSLog(@"Recording started, status: %@", statusCode);
}];
// Call this from the UI action that stops the active recording.
[device requestStopAudioRecordingWithCompletion:^(
BOOL success, NSNumber *_Nullable statusCode, NSError *_Nullable error) {
if (!success) {
NSLog(@"Stop failed: %@", error.localizedDescription);
return;
}
NSLog(@"Recording stopped, status: %@", statusCode);
}];Hata Yönetimi
Birincil sonuç olarak success kullanın. Aygıta özgü işleme için dönen statusCode değerini koruyun ve varsa error öğesini gösterin; genel protokol tek tek durum kodlarının anlamını belgelemez.