我已经实现了头像图片的异步加载以及头像图片的下载及本地保存。
实现方法及源代码请见我的博文:图片的异步加载及图片本地缓存
现在出现了一个后续的问题由于是头像,所以我使用了用户的ID作为头像的名称,例如现在我有3个好友分别是user1,user2,user3,以及我自己myUser.
那么第一次读取过后我本地的头像就为user1.jpg,user2.jpg,user3.jpg,myUser.jpg.
好了问题来了,当我的好友们的头像发生变化的时候,我去读取的时候首先检查的是本地是否有这样图片,那么本地是有图片的,则不会去服务器下载了,但是就没有办法获取到最新的头像了。
当然在我的app里面有清除本地缓存的功能,但是不可能因为一个人头像变化就把所有的头像图片资源全部清除了吧。
不知道有没有什么好的建议和方法呢?
我现在的思路有如下:
1.定时从服务器获取一次头像,比如1天2天或者一周什么的,虽然即时性不高,但是头像更改的频率一般的用户也不会太高。
2.服务器端加头像有更改的状态字段,那么当头像有更改的时候将该状态设置一下,但是因为头像都是跟着其他数据已XML的方式发送过来的,许多涉及到头像的地方那么都要加这一个统一的字段。同时我的方法里面也需要添加代码进行这个字段的判断检查,然后对应的重现下载图片。这样会在服务器和客户端都进行修改比较麻烦一点。以上就是我的一些思路,不过感觉都还不是很好一样,请有经验的朋友如果好的建议和方法的请支点招,谢谢,说说解决方案就都行!欢迎交流~