Flutter音频录制插件fancy_audio_recorder的使用
Flutter音频录制插件fancy_audio_recorder的使用
fancy_audio_recorder
是一个简单易用的音频录制插件(就像即食汤一样)。
示例
开始使用
TODO: 列出前提条件并提供或指向如何开始使用该包的信息。
使用方法
要查看完整的示例代码,请前往 /example
文件夹。
AudioRecorderButton(
maxRecordTime: const Duration(seconds: 80), // 设置最大录音时间为80秒
onRecordComplete: (value) { // 录音完成时的回调函数
log('$value'); // 打印录音文件路径
},
),
完整示例代码
import 'dart:log'; // 导入日志库
import 'package:fancy_audio_recorder/fancy_audio_recorder.dart'; // 导入音频录制插件
import 'package:flutter/material.dart'; // 导入Flutter框架
void main() {
runApp(const MyApp()); // 运行应用
}
class MyApp extends StatelessWidget {
const MyApp({super.key}); // 构造函数
[@override](/user/override)
Widget build(BuildContext context) {
return MaterialApp( // 创建MaterialApp实例
title: 'Fancy Sample App', // 应用标题
theme: ThemeData( // 主题设置
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
useMaterial3: true,
),
home: const MyHomePage(title: 'Fancy Sample App'), // 主页
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({super.key, required this.title}); // 构造函数
final String title; // 标题
[@override](/user/override)
State<MyHomePage> createState() => _MyHomePageState(); // 创建状态类
}
class _MyHomePageState extends State<MyHomePage> {
String? audioPath; // 存储录音文件路径
[@override](/user/override)
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar( // 创建AppBar
backgroundColor: Theme.of(context).colorScheme.inversePrimary, // 设置背景颜色
title: Text(widget.title), // 设置标题
),
body: Center( // 设置中心对齐
child: Column(
mainAxisSize: MainAxisSize.min, // 设置最小高度
children: [
AudioRecorderButton( // 创建录音按钮
maxRecordTime: const Duration(seconds: 80), // 设置最大录音时间
onRecordComplete: (audioPath) { // 录音完成时的回调函数
log('$audioPath'); // 打印录音文件路径
setState(() { // 更新UI
this.audioPath = audioPath;
});
},
),
Text('$audioPath'), // 显示录音文件路径
],
),
));
}
}
更多关于Flutter音频录制插件fancy_audio_recorder的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复