Java 删除正在使用的某些文件夹时,Android应用程序无法正常工作
我遇到的一个问题是,当用户删除正在使用的某些文件夹时,我的android应用程序无法正常工作。Java 删除正在使用的某些文件夹时,Android应用程序无法正常工作,java,android,file,Java,Android,File,我遇到的一个问题是,当用户删除正在使用的某些文件夹时,我的android应用程序无法正常工作。 为了解决这个问题,每次应用程序访问(创建或修改文件)文件夹时,都会调用一个函数以确保文件夹存在 /** * ensure that cache folder exists<br/> * */ public void ensureCacheFolderExist(){ File cacheFile = new File(AUDIO_CACHE_PATH);
为了解决这个问题,每次应用程序访问(创建或修改文件)文件夹时,都会调用一个函数以确保文件夹存在
/**
* ensure that cache folder exists<br/>
* */
public void ensureCacheFolderExist(){
File cacheFile = new File(AUDIO_CACHE_PATH);
if (!cacheFile.exists()) {
boolean returnValue=cacheFile.mkdirs();
MusicUtils.logE("ensureCacheFolderExist no"+returnValue);
} else {
MusicUtils.logE("ensureCacheFolderExist yes");
if (cacheFile.isFile()) {
cacheFile.delete();
}
}
}
除非您的存储卡内存不足,否则我看不出它无法执行mkdirs的原因。我希望你已经得到了明确的许可
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
与
音频缓存路径的值是多少?我更新了此音频缓存路径,我认为这不是问题。名称中有“.”可能是个问题,您能在
mkdirs()之前记录/打印AUDIO\u缓存路径的值吗
?/storage/sdcard0/sogouappmall/mp3这是@ashoke/storage/sdcard0/sogouappmall/mp3这是@OkasSeems多进程在同一文件夹或文件上操作的值可能会导致我的问题。我已经添加了uses权限,这不是原因。@JackieWang请回答我的更新,尝试使用getExternalStoragePublicDirectory
,如果仍然存在问题,请尝试。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
File cacheFile = new File(AUDIO_CACHE_PATH);
File cacheFile = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DCIM), "sogouappmall/mp3");