zhibo/模拟器优化指南.md
2025-12-18 14:52:20 +08:00

89 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 模拟器环境优化指南
## 🚀 已完成的优化
### 1. 应用层优化
- ✅ 异步加载资源,避免主线程阻塞
- ✅ 减少网络请求频率15秒轮询
- ✅ 优化启动流程,立即显示内容
- ✅ 添加ANR防护机制
### 2. 网络层优化
- ✅ 模拟器专用超时配置3秒连接8秒读取
- ✅ 启用连接重试机制
- ✅ 优化HTTP客户端配置
### 3. 流媒体服务器优化
- ✅ 使用模拟器专用SRS配置
- ✅ HLS分片时长降至1秒极低延迟
- ✅ 减少缓冲区大小
- ✅ 关闭GOP缓存
## 📱 模拟器设置建议
### Android Studio模拟器优化
1. **硬件配置**
- RAM: 至少4GB
- VM heap: 512MB
- Graphics: Hardware - GLES 2.0
2. **高级设置**
- 启用 "Use Host GPU"
- 启用 "Snapshot" 快速启动
- 关闭不必要的传感器
### 推流设置OBS
```
服务器: rtmp://localhost:1935/live
密钥: 从应用获取的streamKey
```
**OBS优化设置**
- 关键帧间隔: 1秒
- 码率: 1000-2000 kbps模拟器环境建议较低
- 分辨率: 720p或更低
- 编码器: x264软编码兼容性更好
## ⚡ 延迟优化效果
| 配置项 | 优化前 | 优化后 |
|--------|--------|--------|
| HLS分片 | 10秒 | 1秒 |
| 缓冲时长 | 30秒 | 3秒 |
| 预期延迟 | 15-20秒 | 3-8秒 |
## 🔧 故障排除
### 如果仍然出现ANR
1. 重启模拟器
2. 清除应用数据
3. 检查电脑性能CPU/内存使用率)
### 如果延迟仍然很高
1. 确认使用HTTP-FLV播放延迟更低
2. 检查网络连接
3. 尝试降低推流码率
### 切换回生产配置
如需在真机上测试修改docker-compose.yml
```yaml
volumes:
- ./docker/srs/srs.conf:/usr/local/srs/conf/srs.conf
```
## 📊 性能监控
可以通过以下方式监控性能:
- SRS统计页面: http://localhost:8080/console/
- Android Studio Profiler
- 应用内的网络请求日志
## 💡 最佳实践
1. **开发阶段**: 使用模拟器配置,快速测试
2. **测试阶段**: 切换到真机,验证实际性能
3. **生产环境**: 使用标准配置,确保稳定性
---
*注意:模拟器环境的延迟主要来自虚拟化开销,真机环境下延迟会显著降低。*