Android开发中的那些坑

Android 获取 cache 目录失败 ContextImpl: Failed to ensure directory

ContextImpl: Failed to ensure directory

在通过 context.getExternalCacheDir() 或者 context.getCacheDir() 类似的方法获取文件的时候,可能会报以下的错误:

ContextImpl: Failed to ensure directory: /storage/sdcard1/Android/data/com.binkery.allinone/cache

在 Stackoverflow 上找到的答案,基本可以忽略这个错误提示。

Answer 1 :

This happened to me when uninstalling the app and reinstalling it. But probably the resources of the app (com.xxxx.app in your case) had a reference not released.

The solution was quite simple: just stop and relaunch the emulator, or reboot the phone should do the trick.

这里解释获取 cache 目录失败的原因是卸载 app 并且重新安装的时候,某些 app 的资源因为没有释放没有被彻底删除掉,导致的失败。重启手机可以解决这样的问题。

Answer 2 :

This is because you are connected to your development machine, and cannot write to the emulated storage on it.

link :http://stackoverflow.com/questions/27736608/android-failed-to-ensure-directory-when-getexternalfilesdirnull

另外一种可能是你连接的设备是一个开发机,并且你不能写入文件到它的存储器中。这种一般比较少。

EOF

本文作者:Binkery
本文地址:https://binkery.com/archives/536.html
版权声明:欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果