Android读取服务器图片的三种方法
发布时间 - 2026-01-11 01:32:38 点击率:次Android链接服务器获取图片在此提供三种方法,已通过验证,无误。

方法一:
public static Bitmap getImage(String path){
try {
HttpURLConnection conn = (HttpURLConnection) new URL(path).openConnection();
conn.setConnectTimeout(5000);
conn.setRequestMethod("GET");
System.out.println("tdw1");
if(conn.getResponseCode() == 200){
InputStream inputStream = conn.getInputStream();
Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
return bitmap;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
在第一种方法中,从conn的输入流中获取数据将其转化为Bitmap型数据。
在功能代码中:
image.setImageBitmap(getImage("路径"));
image为ImageView型控件。
第二种方法:
public static Bitmap getImage1(String path){
HttpGet get = new HttpGet(path);
HttpClient client = new DefaultHttpClient();
Bitmap pic = null;
try {
HttpResponse response = client.execute(get);
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
pic = BitmapFactory.decodeStream(is); // 关键是这句代
} catch (Exception e) {
e.printStackTrace();
}
return pic;
}
这个方法类似上面那个方法。在功能代码中设置是一样的
第三种方法:
public static Uri getImage2(String path,File cacheDir){
File localFile = new File(cacheDir,MD5.getMD5(path)+path.substring(path.lastIndexOf(".")));
if(localFile.exists()){
return Uri.fromFile(localFile);
}else
{
HttpURLConnection conn;
try {
conn = (HttpURLConnection) new URL(path).openConnection();
conn.setConnectTimeout(5000);
conn.setRequestMethod("GET");
if(conn.getResponseCode() == 200){
System.out.println("tdw");
FileOutputStream outputStream = new FileOutputStream(localFile);
InputStream inputStream = conn.getInputStream();
byte[] buffer = new byte[1024];
int length = 0;
while((length=inputStream.read(buffer))!=-1){
outputStream.write(buffer, 0, length);
}
inputStream.close();
outputStream.close();
return Uri.fromFile(localFile);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
第三种方法,将从服务器获取的数据存入本地的文件中,如果文件已存在,则不需要从服务器重新获取数据。
在功能代码中:
image.setImageURI(getImage2(path, cache));
上面代码中设置图片为缓存设置,这样如果图片资源更新了,则需要重新命名文件的名字,这样才能够重新加载新图片。
cache = new File(Environment.getExternalStorageDirectory(),"cache");
if(!cache.exists()){
cache.mkdirs();
}
这里是设置 缓存图片的路径。
以上为三种方法。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Android读取服务器图片
# Android读取服务器
# Android读取图片
# Android将图片上传到php服务器的实例代码
# Android 通过Base64上传图片到服务器实现实例
# Android 通过webservice上传多张图片到指定服务器详解
# Android选择图片或拍照图片上传到服务器
# Android开发中调用系统相册上传图片到服务器OPPO等部分手机上出现短暂的显示桌面问题的解决方法
# Android Socket服务端与客户端用字符串的方式互相传递图片的方法
# Android使用post方式上传图片到服务器的方法
# Android异步上传图片到PHP服务器
# Android从服务器获取图片的实例方法
# android传送照片到FTP服务器的实现代码
# 种方法
# 在此
# 不需要
# 将其
# 三种
# 转化为
# 这句
# 才能够
# 大家多多
# 则需
# 为三
# 加载
# 是一样的
# getInputStream
# bitmap
# inputStream
# getResponseCode
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
网站建设要注意的标准 促进网站用户好感度!
jQuery中的100个技巧汇总
Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全
如何快速搭建安全的FTP站点?
Laravel如何使用Sanctum进行API认证?(SPA实战)
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
如何在搬瓦工VPS快速搭建网站?
Thinkphp 中 distinct 的用法解析
香港服务器网站卡顿?如何解决网络延迟与负载问题?
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
Python面向对象测试方法_mock解析【教程】
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
大连网站制作公司哪家好一点,大连买房网站哪个好?
网站制作大概多少钱一个,做一个平台网站大概多少钱?
长沙企业网站制作哪家好,长沙水业集团官方网站?
iOS UIView常见属性方法小结
Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】
Python文件异常处理策略_健壮性说明【指导】
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
android nfc常用标签读取总结
Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言
PHP怎么接收前端传的文件路径_处理文件路径参数接收方法【汇总】
如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】
如何续费美橙建站之星域名及服务?
如何制作一个表白网站视频,关于勇敢表白的小标题?
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
Laravel如何自定义分页视图?(Pagination示例)
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
奇安信“盘古石”团队突破 iOS 26.1 提权
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?
无锡营销型网站制作公司,无锡网选车牌流程?
如何获取PHP WAP自助建站系统源码?
如何在建站主机中优化服务器配置?
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
高端企业智能建站程序:SEO优化与响应式模板定制开发
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册
如何在景安服务器上快速搭建个人网站?
node.js报错:Cannot find module 'ejs'的解决办法
html5audio标签播放结束怎么触发事件_onended回调方法【教程】
高端网站建设与定制开发一站式解决方案 中企动力
Bootstrap整体框架之CSS12栅格系统
Linux网络带宽限制_tc配置实践解析【教程】
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
下一篇:《今川日语》背单词方法
下一篇:《今川日语》背单词方法

