mac电脑开发第二次

This commit is contained in:
2026-02-12 17:27:03 +08:00
parent 517c9068e6
commit 67d8c4ec88
@@ -1,11 +1,43 @@
import { StartAudioRecordOptions } from '../interface.uts';
import { StartAudioRecordFailImpl, AudioErrorCode } from '../unierror.uts';
import { UTSiOS } from "DCloudUTSFoundation"
// 线程安全的录制状态标识
let isRecording = false;
/**
* 引用 iOS 系统库,示例如下:
* import { UIDevice } from "UIKit";
* [可选实现,按需引入]
* 启动音频采集(iOS端核心实现)
* @param options 采集配置及回调
*/
@UTSJS.keepAlive
export function startAudioRecord(options: StartAudioRecordOptions): void {
// 避免重复启动
console.log('避免重复启动', isRecording);
if (isRecording) return;
try {
const audioSession = AVAudioSession.sharedInstance();
const authStatus = audioSession.recordPermission();
console.log('asaadda', authStatus);
isRecording = true;
} catch (error) {
// 初始化失败回调错误
const err = new StartAudioRecordFailImpl(AudioErrorCode.AUDIO_FORMAT_ILLEGAL);
options.onError?.(err);
// 重置状态
return;
}
}
/* 引入 interface.uts 文件中定义的变量 */
import { MyApiOptions, MyApiResult, MyApi, MyApiSync } from '../interface.uts';
/* 引入 unierror.uts 文件中定义的变量 */
import { MyApiFailImpl } from '../unierror';
/**
* 停止音频采集(配套停止逻辑,保证功能完整)
* @param options 回调配置
*/
@UTSJS.keepAlive
export function stopAudioRecord(): void {
}