现在我正在使用以下代码检索图像,它运行良好。但我想使用 . 实现缓存universal-image-loader
。我已经在我的其他项目中实现了它,其中我有完整的图像 url,如 ~\images\pic1。 jpeg 。另一方面,在使用 Contacts api v3 时,我必须处理输入流,而且我没有如此完整的 url。所以我不知道如何实现universal-image-loader
。
供参考:联系 api v3
这是我现在正在使用的代码:
Bitmap bm=BitmapFactory.decodeResource(HomeActivity.this.getResources(),
R.drawable.profile_pic);
CONSTANTS.buffer = new byte[4096];
// iterate the loop upto number of contacts
for(int i=0;i<CONSTANTS.contactArrayList.size();i++)
{
//if the contact has any profile pic then retrieve it otherwise set default profile pic from drawable folder
if(CONSTANTS.contactArrayList.get(i).getContactPhotoLink().getEtag()!=null)
{
try
{
GDataRequest request = CONSTANTS.mContactService.createLinkQueryRequest(CONSTANTS.contactArrayList.get(i).getContactPhotoLink());
request.execute();
InputStream in = request.getResponseStream();
CONSTANTS.buffer = ByteStreams.toByteArray(in);
bm = BitmapFactory.decodeByteArray(CONSTANTS.buffer, 0, CONSTANTS.buffer.length);
in.close();
request.end();
}
catch (Exception e) {
UTILS.Log_e("loadProfilePics error", e.toString());
}
}
else
{
bm = BitmapFactory.decodeResource(HomeActivity.this.getResources(),
R.drawable.profile_pic);
}
CONSTANTS.contactArrayList.get(i).setContactPhoto(bm);
}