使用okhttp上传录制音频文件时遇到问题
- expected bytes but received
- 是结束录制时文件为转化完成,上传时文件变化引起异常
- 解决方法如下
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
//判断文件是否被其他线程占用
if (file.renameTo(file)) {
//取消定时操作
timer.cancel();
//执行上传音频操作
ApiClient.uploadOkHttp(files, paths, handler);
}
}
}, 1500, 1500);
- 不立即执行上传音频操作,先判断文件是否被占用,若文件转化完成再进行上传操作