音频测试Demo是一个集成在React Native应用中的WebSocket音频流测试工具,允许您直接在应用界面上上传音频文件并测试WebSocket连接和音频传输功能。
- 启动React Native应用
- 点击屏幕右下角的悬浮调试按钮
- 在调试面板中找到"🧪 音频测试Demo"按钮
- 点击进入音频测试界面
如果您有开发权限,可以直接在代码中导航到音频测试页面。
- 实时显示: WebSocket连接状态(未连接/连接中/已连接/连接错误)
- 状态指示器: 彩色圆点显示当前连接状态
- 自动重连: 支持连接失败后的自动重连机制
- 多格式支持: MP3, WAV, M4A, AAC, OGG
- 文件验证: 自动检查文件格式和大小
- 文件信息: 显示文件名、大小、格式等详细信息
- 文件更换: 支持随时更换测试文件
- 一键测试: 点击"开始测试"按钮执行完整测试流程
- 进度显示: 实时显示音频数据发送进度
- 状态反馈: 测试过程中的详细状态信息
- 测试记录: 保存所有测试结果
- 结果查看: 通过"结果"按钮查看历史测试记录
- 结果详情: 包含测试状态、耗时、文件大小等信息
- 结果清理: 支持清除历史测试结果
- 点击"选择音频文件"按钮
- 从设备中选择要测试的音频文件
- 系统会自动验证文件格式和大小
- 确认文件信息正确
- 确保WebSocket连接状态为"已连接"
- 点击"开始测试"按钮
- 观察测试进度条
- 等待测试完成
- 测试完成后,点击右上角"结果"按钮
- 查看测试结果详情
- 分析连接状态和传输情况
- 必要时清除历史结果
1. 获取用户认证token
2. 初始化WebSocket连接
3. 发送音频配置参数
4. 等待连接确认
1. 读取音频文件数据
2. 分块发送音频数据(每块4096字节)
3. 实时更新发送进度
4. 发送结束标记
1. 等待服务器响应
2. 记录测试结果
3. 更新连接状态
4. 显示测试完成信息
- 状态: ✅ 成功
- 信息: 包含测试耗时、文件大小等
- 颜色: 绿色背景,表示测试通过
- 状态: ❌ 失败
- 信息: 包含错误原因和详细信息
- 颜色: 红色背景,表示测试失败
- 测试ID: 唯一标识符
- 时间戳: 测试执行时间
- 状态: 成功/失败/超时
- 消息: 详细结果描述
- 耗时: 测试执行时间(毫秒)
- 文件大小: 测试文件大小
- 确保设备网络连接正常
- WebSocket服务器地址可访问
- 网络延迟不影响测试结果
- 文件大小建议不超过100MB
- 支持的音频格式:MP3, WAV, M4A, AAC, OGG
- 文件完整性检查
- 需要文件读取权限
- 需要网络访问权限
- 需要用户认证token
问题: WebSocket连接失败 解决方案:
- 检查网络连接
- 验证服务器地址
- 确认认证token有效
- 检查防火墙设置
问题: 无法选择或上传音频文件 解决方案:
- 检查文件权限
- 验证文件格式
- 确认文件大小
- 重启应用
问题: 测试执行时间过长 解决方案:
- 检查网络速度
- 减小测试文件大小
- 检查服务器负载
- 重试测试
- AudioTestDemoScreen: 主界面组件
- realTimeTranslationService: WebSocket服务
- audioRecordingService: 音频处理服务
- DocumentPicker: 文件选择器
react-native-fs: 文件系统操作@react-native-documents/picker: 文件选择ws: WebSocket客户端(Node.js测试)
- 服务器地址:
ws://123.56.246.44:80 - 音频格式: 支持多种格式
- 分块大小: 4096字节
- 发送间隔: 100毫秒
- 分块读取大文件
- 及时释放资源
- 避免内存泄漏
- 控制发送频率
- 实现断点续传
- 错误重试机制
- 实时进度反馈
- 友好的错误提示
- 响应式界面设计
- 批量文件测试
- 自定义测试参数
- 测试报告导出
- 性能基准测试
- 可配置的服务器地址
- 可调整的音频参数
- 可选择的测试模式
如果您在使用过程中遇到问题,请:
- 查看控制台日志
- 检查网络连接
- 验证文件格式
- 联系技术支持
版本: 1.0.0
更新日期: 2024年12月
兼容性: React Native 0.80.1+