27.4缓存实现
1为了在清除缓存的时候能够正常清除与应用相关的缓存,需将缓存文件存放在getCacheDir()或者getExternalCacheDir()路径下。
2为了安全起见,缓存的文件名可以使用MD5加密,对某些文件内容也可以进行加密。
3有两种方式判断是否需要更新本地的缓存文件,一是根据文件的修改时间,一是根据文件的版本号,两者都需要服务器端把这些数据传递给APP端。
如果APP端已经存储有文件的修改时间或版本号,APP每次向服务器发起请求时,把修改时间或版本号发给服务器;服务器端据此判断是否文件已经有更新:如果有,返回新的数据文件给APP;否则,只返回相关状态码。
有两个开源的缓存实现框架,可以参考:
ASimpleCache
XCCacheManager