好吧,我对 android 开发相当陌生,并且正在开发一个应用程序。我已经查看了整个 stackoverflow,但似乎找不到有效的示例。我需要从 url 异步下载照片,然后将其设置在 imageview 中。我决定创建一个与我的片段分开的类来下载图像。
代码:
public class UpdateUser {
private static final String TAG = "UpdateUser";
public void refresh(JSONObject user){
//Download profile pic
try {
downloadProfpic(user.getString("userpic_url"));
} catch (JSONException e) {
Log.e(TAG, "", e);
}
}
public void downloadProfpic(String userpicURL) {
try{
URL murl = new URL(userpicURL);
Bitmap bm = BitmapFactory.decodeStream(murl.openConnection().getInputStream());
Context context = Application.getContext();
final FileOutputStream fos = context.openFileOutput("Prof_pic.png", Context.MODE_PRIVATE);
bm.compress(CompressFormat.JPEG, 90, fos);
//Set the imageview
//pageFrag.setProfPic("Prof_pic.png");
} catch (IOException e) {
e.printStackTrace();
return;
}
}
}
如您所见,它不是异步的,也没有设置图像视图。我也很确定我没有正确地做这件事。我应该下载到内部存储吗?还是下载到文件?有人可以帮助我。
谢谢你,汤姆