I am integrating Volley into a project and came across the standard
[We have items in the Cache, but want to allow the User to refresh anyway] Scenario
Now Google Volley provides 2 ways to clear an item from the Cache:
getRequestQueue().getCache().remove(key);
and
getRequestQueue().getCache().invalidate(key, fullExpire);
I looked into the code and was a bit surprised, that invalidate
with fullExpire
set to true doesn't behave exactly like a call to remove(key)
.
Can somebody explain the benefits of using fullExpire
over remove()
?
Remove means you are removing the actual cached data.
Invalidate means you are just marking the data as invalid. So volley will check with the server whether the data is still valid. The full expire determines whether to use the data before volley has validated it with the server.
More details in the source: https://android.googlesource.com/platform/frameworks/volley/+/master/src/main/java/com/android/volley/Cache.java
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With