我从Volley库中得到了这个NegativeArraySizeException。在我将Volley android-library-module更改为maven依赖项(例如compile 'com.android.volley:volley:1.0.0'
我已经singleton pattern了,我更改了addToRequestQueue
方法以避免following link的双重请求错误:
public <T> void addToRequestQueue(Request<T> req) {
req.setRetryPolicy(new DefaultRetryPolicy(
0,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
getRequestQueue().add(req);
}
我看到官方Android-Volley没有得到任何更新。所以我必须改回它的样子吗?或者有没有办法解决这个错误? 提前谢谢。
Fatal Exception: java.lang.NegativeArraySizeException: -603989761
at com.android.volley.toolbox.DiskBasedCache.streamToBytes(DiskBasedCache.java:323)
at com.android.volley.toolbox.DiskBasedCache.readString(DiskBasedCache.java:541)
at com.android.volley.toolbox.DiskBasedCache.readStringStringMap(DiskBasedCache.java:563)
at com.android.volley.toolbox.DiskBasedCache$CacheHeader.readHeader(DiskBasedCache.java:404)
at com.android.volley.toolbox.DiskBasedCache.initialize(DiskBasedCache.java:157)
at com.android.volley.CacheDispatcher.run(CacheDispatcher.java:84)