【发布时间】:2014-07-28 13:19:04
【问题描述】:
有时 Volley 在启动时随机使我的应用崩溃,它在应用程序类中崩溃,并且用户在进入设置并清除应用数据之前无法再次打开该应用
java.lang.OutOfMemoryError
at com.android.volley.toolbox.DiskBasedCache.streamToBytes(DiskBasedCache.java:316)
at com.android.volley.toolbox.DiskBasedCache.readString(DiskBasedCache.java:526)
at com.android.volley.toolbox.DiskBasedCache.readStringStringMap(DiskBasedCache.java:549)
at com.android.volley.toolbox.DiskBasedCache$CacheHeader.readHeader(DiskBasedCache.java:392)
at com.android.volley.toolbox.DiskBasedCache.initialize(DiskBasedCache.java:155)
at com.android.volley.CacheDispatcher.run(CacheDispatcher.java:84)
“diskbasedbach”尝试分配超过 1 GB 的内存,原因不明
我怎样才能避免这种情况发生?这似乎是 Volley 的问题,或者可能是基于自定义磁盘的缓存的问题,但我没有立即看到(从堆栈跟踪)如何“清除”此缓存或进行条件检查或处理此异常
洞察力赞赏
【问题讨论】:
标签: android out-of-memory android-volley diskcache