我正在开发一个Android应用程序,当用户播放该应用程序时,我需要从我的网站中获取指定的音频文件,但是我不想每次都流媒体或下载它,只是第一次。因此,我考虑将其缓存并在需要用户时离线播放。因此,请提出任何可行的方法。或者是否存在其他方法,而不是缓存like downloading the actual file to file storage and play whenever needed
。
答案 0 :(得分:0)
如果需要缓存文件,则应使用createTempFile()。例如,以下方法从URL中提取文件名,然后在应用程序的内部缓存目录中创建一个具有该名称的文件:
private File getTempFile(Context context, String url) {
File file;
try {
String fileName = Uri.parse(url).getLastPathSegment();
file = File.createTempFile(fileName, null,
context.getCacheDir());
} catch (IOException e) {
// Error while creating file
}
return file;
}
您还可以在此处查看有关缓存文件的更多信息。
https://developer.android.com/training/data-storage/files.html#WriteCacheFileInternal
希望这会有所帮助。