将图片从网址加载到内部存储空间

时间:2016-01-22 16:22:05

标签: android android-asynctask

我的目标是从给定网址下载多个图片并将其保存到内部存储空间。

private void downloadImages(List<String> filename,JSONObject c) throws  Exception{
    String fileName = c.getString("name") + ".json";
    String data = "";
    File images = getDir("Images", Context.MODE_PRIVATE);
    File dir = new File(images,fileName);
    System.out.println(dir.getAbsolutePath());
    List<Bitmap> pictures = new ArrayList<>();
    for(String s : filename){

    }
}

List<String> filename包含图片中的所有网址。 所以我认为我必须做的是,在filename下载每个网址的图片 结构是这样的:

Images
------fileName
--------------Image1
--------------Image2
------fileName2
--------------Image1
--------------Image2

我想用这个:

AsyncHttpClient client = new AsyncHttpClient();
client.get("https://example.com/file.png", new FileAsyncHttpResponseHandler(/* Context */ this) {
    @Override
    public void onSuccess(int statusCode, Header[] headers, File response) {
        // Do something with the file `response`
    }
});

3 个答案:

答案 0 :(得分:3)

尝试使用facebook Fresco强大的图像缓存和下载提供的这个很棒的库。

答案 1 :(得分:0)

答案 2 :(得分:0)

您需要查看图像还是使用图像?如果您只是想使用图像然后重新发明轮子是没有办法尝试使用库而不是实现自己的东西它会节省你很多的压力和时间尝试PicassoUniversal Image Loader所有这些都是为你完成的。