我的应用程序有点问题,我使用.txt文件获取应用程序应显示的显示我的图片的正确URL。一切正常。但是,如果我更改远程.txt文件的内容,应用程序将继续加载相同的图片。这是从远程获取Pics的代码。
private ArrayList<String> getPictures(){
fileList.clear();
try {
URL url = new URL("http://server.com/test.txt");
BufferedReader in = new BufferedReader(new InputStreamReader(
url.openStream()));
String str;
while ((str = in.readLine()) != null) {
fileList.add(str);
}
in.close();
} catch (MalformedURLException te) {
finish();
} catch (IOException tt) {
finish();
}
return fileList;
}
所以我不知道为什么每次调用该方法时都没有获取新内容我清除ArrayList!
我希望有人能解决这个问题,这很烦人。
/ edit:忘了发布包含适配器的方法,所以这里是:
private String getAnImageUrl() {
getPictures();
ArrayAdapter<String> arrAdapt = new ArrayAdapter<String>(this, R.layout.main, fileList);
arrAdapt.setNotifyOnChange(true);
i++;
if (i >= arrAdapt.getCount()) {
i = 0;
}
return test = arrAdapt.getItem(i).toString();
}
答案 0 :(得分:1)
是的,我通过自己的应用程序下载了一些JSON来体验这一点。最简单的解决方法是在URL请求中添加一个随机参数,如下所示:
String urlString = "http://server.com/test.txt?" + System.currentTimeMillis();
URL url = new URL(urlString);
这会将当前系统时间作为参数添加到您的网址,这将绕过网页的任何缓存版本