我在缓存方面遇到的问题很少......
1)我使用URLImage如下
URLImage.createToStorage(profileImg, photoUrl + "__c", photoUrl, URLImage.RESIZE_SCALE_TO_FILL)
但是如果在服务器中编辑了图像(旧图像被新图像替换),则显示旧图像而不是更新到新图像。我应该怎么做才能重新更新缓存的图像。
2)我们正在开发一个新闻应用程序。这里的新闻每天都会更新。最近的十条新闻保存在存储中如下:
//write the storage object
do {
Storage.getInstance().writeObject("newsListingStorage", fetchresponses);
} while (fetchLastId < 10);
//read the storage
public Vector newsListOfflineStorage() {
Vector newsListingRead = (Vector)Storage.getInstance().readObject("newsListingStorage");
return fetchresponses;
}
我担心如果用户每天存储10个项目,它将在一个月或一年内存储更多,并且缓存项目继续...如何将每次存储的缓存替换为最新的10个项目,以便每次运行应用程序时只有十个最近缓存的项目。
答案 0 :(得分:1)
我不知道codenameone中是否已经引入了缓存过期但是我如何处理这个问题...缓存来自数据库的唯一ID的图像
'
假设您之前存储了10条新闻,它们有什么ID并不重要,在您的数据库中,您有100条新闻,而您只需要从91到100的唯一ID的热门新闻。循环从0到90并删除存储中的图像(如果存在)。
URLImage.createToStorage(profileImg, "largeImage_" + newsUniqueId + ".jpg", photoUrl, URLImage.RESIZE_SCALE_TO_FILL);