android如何将图像从互联网下载到本地存储?
Posted
技术标签:
【中文标题】android如何将图像从互联网下载到本地存储?【英文标题】:android how to download image form internet to local storage? 【发布时间】:2018-05-09 22:30:39 【问题描述】:我想将图片从 URL 互联网下载到本地存储并从本地存储打开图片到 imageview ?
我看到了这些答案
How to download and save an image in android
Download images and save it
downloading images with Picasso android disck
Saving image from URL using Picasso?
我知道我们可以使用 Picasso 和 Glide 以及 Volley 和 Universal Image Loader 来完成这些工作,并且还有其他库...
但是我无法实现下载图片的代码!并且在互联网上找不到任何新的例子。 我找到了毕加索图书馆的一些旧例子旧版本
你能给我从 URL 互联网下载图像到本地存储的新代码或任何关于这个主题的教程
【问题讨论】:
您分享的所有链接有什么问题? The very first link 看起来很全面.... @Matt Clark 我无法实现下载图片的代码! ...并且在互联网上找不到任何新示例...我找到了毕加索图书馆旧版本的一些旧示例 为什么不能实现呢?你找不到任何新的例子是什么意思?该帖子具有进行下载的确切代码... @Matt Clark 就像毕加索一样,这是旧版本 Picasso.with(MainActivity.class).load(myPhoto).into(picassoImageTarget(getApplicationContext(), "imageDir", "my_image.jpeg" )); 你还没有解释你的问题是什么,或者为什么你不能实施这些解决方案。也许你应该去read the docs for Picasso。 【参考方案1】:试试这个...
使用这个 gradle:https://github.com/amitshekhariitbhu/Fast-Android-Networking
并检查这一点:从服务器下载文件
【讨论】:
【参考方案2】:使用下载管理器从链接下载图片(来自互联网)
DownloadManager downloadManager = (DownloadManager) ((Activity) context).getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE)
.setAllowedOverRoaming(false)
.setTitle(fileName)
.setDescription("file description")
.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED)
.setDestinationInExternalPublicDir(imgStoragePath, fileName)
.setVisibleInDownloadsUi(true);
BroadcastReceiver onComplete = new BroadcastReceiver()
public void onReceive(Context ctxt, Intent intent)
//Download complete
;
context.registerReceiver(onComplete, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
downloadManager.enqueue(request);
【讨论】:
以上是关于android如何将图像从互联网下载到本地存储?的主要内容,如果未能解决你的问题,请参考以下文章
从url下载pdf,在flutter中保存到android中的手机本地存储
从服务器下载时,listview 将图像存储在 android 中的位置