当特定URL上的图像发生更改且URL保持不变时,我应该如何在android中更新图像缓存?
例如,Facebook为用户的个人资料pic保留相同的URL,并且仍然能够识别pic何时更新,并在客户端Android上清除其缓存。我想你是说你的图像的URL保持不变,而图像已经更改。你不必做任何事情来加载你的图像。您编写的从URL获取图像的函数将自动从URL检测图像并获取它。例如当特定URL上的图像发生更改且URL保持不变时,我应该如何在android中更新图像缓存?,android,facebook,image,url,caching,Android,Facebook,Image,Url,Caching,例如,Facebook为用户的个人资料pic保留相同的URL,并且仍然能够识别pic何时更新,并在客户端Android上清除其缓存。我想你是说你的图像的URL保持不变,而图像已经更改。你不必做任何事情来加载你的图像。您编写的从URL获取图像的函数将自动从URL检测图像并获取它。例如 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); s
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
load_img = (Button)findViewById(R.id.load);
img = (ImageView)findViewById(R.id.img);
load_img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
new LoadImage().execute("https://www.learn2crack.com/wp-content/uploads/2014/04/node-cover-720x340.png");
}
});
}
private class LoadImage extends AsyncTask<String, String, Bitmap> {
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(MainActivity.this);
pDialog.setMessage("Loading Image ....");
pDialog.show();
}
protected Bitmap doInBackground(String... args) {
try {
bitmap = BitmapFactory.decodeStream((InputStream)new URL(args[0]).getContent());
} catch (Exception e) {
e.printStackTrace();
}
return bitmap;
}
protected void onPostExecute(Bitmap image) {
if(image != null){
img.setImageBitmap(image);
pDialog.dismiss();
}else{
pDialog.dismiss();
Toast.makeText(MainActivity.this, "Image Does Not exist or Network Error", Toast.LENGTH_SHORT).show();
}
}
}
其中imageView是您的imageView。我已经加载了图像,我想在服务器更新时将其从缓存中删除。您使用哪种方法加载图像??位图或任何其他@桑杰夫
Picasso.with(context).load("YOUR_URL").into(imageView);