mac电脑开发第二次
This commit is contained in:
@@ -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 {
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user