1.4 KiB
1.4 KiB
课程完成标准调整说明
问题
课程只看了几分钟还没看完,就在课程记录中更新了进度。
原因
之前的完成标准过于宽松:
- 短视频(≤10秒):看80%就算完成
- 普通视频:看90%就算完成
导致用户只看了大部分就被标记为"已完成"。
解决方案
方案1:95%完成标准(已实施)
// 短视频和普通视频都要求95%
completionThreshold = 0.95;
效果:
- 10分钟视频需要看到9.5分钟才算完成
- 用户必须几乎看完才会更新进度
方案2:100%完成标准(更严格,可选)
如果需要更严格,可以修改为:
if (duration <= 10) {
completionThreshold = 1.0; // 100%
} else {
completionThreshold = 1.0; // 100%
}
但不建议100%,因为:
- 视频播放器可能有1-2秒的误差
- 用户可能提前几秒关闭
- 95%已经能保证用户真正看完了
推荐配置
| 课件类型 | 推荐完成标准 | 说明 |
|---|---|---|
| 短视频(≤10秒) | 95% | 确保看完 |
| 普通视频 | 95% | 几乎看到结尾 |
| 长视频(>10分钟) | 95% | 避免误差导致无法完成 |
| 图片/PDF | 查看即完成 | 保持不变 |
修改文件
StudyLearningRecordServiceImpl.java 第432-437行
测试建议
- 重新编译后端
- 测试不同长度的视频
- 查看进度是否在95%时才更新