Open hong123608 opened 5 years ago
Caused by: java.io.FileNotFoundException: /storage/emulated/0/Android/data/ xxx/download: open failed: ENAMETOOLONG (File name too long)
我遇到了这个错,请问你解决了吗?
Caused by: java.io.FileNotFoundException: /storage/emulated/0/Android/data/ xxx/download: open failed: ENAMETOOLONG (File name too long)
我遇到了这个错,请问你解决了吗?
没解决,直接通过播放异常来判断的,异常的话删除文件重新缓存
public class MyFileNameGenerator implements FileNameGenerator { private static final int MAX_EXTENSION_LENGTH = 4;
@Override
public String generate(String url) {
String extension = getExtension(url);
url = cutUrl(url);
Log.e("cutUrl", url);
String name = ProxyCacheUtils.computeMD5(url);
Log.e("name", name);
return TextUtils.isEmpty(extension) ? name : name + "." + extension;
}
private String cutUrl(String url) {
int dotIndex = url.lastIndexOf('.');
if (url.length() > 10 && dotIndex > 10) {
return url.substring(dotIndex - 10);
} else {
return url;
}
}
给后人一点建议吧,我这边把url弄短了很多 放了20次+ 没发现错误
缓存的文件结构异常,导致播放出现问题,有没有遇到的