位置: 编程技术 - 正文

Android 从网络下载图片OOM(安卓数据网络)

编辑:rootadmin

推荐整理分享Android 从网络下载图片OOM(安卓数据网络),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:安卓数据网络,android获取网速,android 网络连接,android网络下载,android 网络连接,android网络下载,android 网络连接,android获取网络数据,内容如对您有帮助,希望把文章链接给更多的朋友!

最近有个需求,从网络下载图片,但不能使用imageloader,因为iimageloader使用缓存机制,同一路径下的图片如果跟换怎不会刷新替换。所以必须自己下载解析。但遇到OOM的问题,如果用BitmapFactory.decodeStream 则会返回null,所以我采用的办法是先将图片下载下来,再计算图片宽高,最后绑定图片后将图片删除的办法。话不多说,先上代码

//path为图片的网络路径

private Bitmap getHttpBitmap(String path) {try {URL url = new URL(path);HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setConnectTimeout();conn.setRequestMethod("GET");if (conn.getResponseCode() == ) {InputStream is = conn.getInputStream();//获取图片路径String[] names = path.split("/");String name = names[names.length-1];//保存图片到本地FileOutputStream outStream = new FileOutputStream(new File(Environment.getExternalStorageDirectory() &#; "/"&#; name));byte[] buffer = new byte[];int len = -1;while ((len = is.read(buffer)) != -1) {outStream.write(buffer, 0, len);}outStream.close();//获取图片宽高BitmapFactory.Options opts = new BitmapFactory.Options();opts.inJustDecodeBounds = true;BitmapFactory.decodeFile(Environment.getExternalStorageDirectory() &#; "/"&#; name , opts);int imageWidth = opts.outWidth;int imageHeight = opts.outHeight;Log.i("imageWidth", String.valueOf(imageWidth));Log.i("imageHeight", String.valueOf(imageHeight));//计算缩放比例,此处为默认&#;,也可以获取控件宽高进行计算int widthscale = imageWidth / ;int heightscale = imageHeight / ;int scale = widthscale > heightscale ? widthscale: heightscale;Log.i("scale", String.valueOf(scale));//开始真正获取图片,进行压缩后的图片opts.inJustDecodeBounds = false;opts.inSampleSize = scale;localerweima =Environment.getExternalStorageDirectory() &#; "/"&#; name;Bitmap bitmap = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory() &#; "/"&#; name , opts);Log.i("bitmap1", String.valueOf(bitmap));is.close();Message msg = Message.obtain();msg.what = 1;msg.obj = bitmap;handler.sendMessage(msg);return bitmap;}return null;} catch (Exception e) {Log.i("e.toString();", e.toString());return null;}}

Android 从网络下载图片OOM(安卓数据网络)

//这是handler绑定图片并删除文件的操作

Message msg = new Message();Handler handler = new Handler() {public void handleMessage(Message msg) {switch (msg.what) {case 1: // 二维码Bitmap bm = (Bitmap) msg.obj;tv_erweima.setImageBitmap(bm);new File(localerweima).delete(); //每次绑定完成后删除本地文件break;default:break;}};};

Android5.0网络之socket接口的改变 socket是网络编程的基础,Android中socket接口定义在bionic里面,Android5.0后,为了更好使用fwmark,用netd中的函数实现部分代替了bionic的socket实现。上代码bioni

Android学习【RelativeLayout控件设置宽 高】 privateRelativeLayoutrelativeLayout;relativeLayout=(RelativeLayout)findViewById(R.id.relativeLayout);player_View.getLayoutParams().height=;player_View.getLayoutParams().width=;

android 实现加载动画对话框 先来两张效果图自定义对话框:publicclassLoadingProgressDialogextendsProgressDialog{privateAnimationDrawablemAnimation;privateContextmContext;privateImageViewmImageView;privateStringmLoadi

标签: 安卓数据网络

本文链接地址:https://www.jiuchutong.com/biancheng/382180.html 转载请保留说明!

上一篇:Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent错误的记录。

下一篇:Android5.0网络之socket接口的改变(android系统联网)

  • 电子缴款凭证和完税证明都可以做原始凭证吗
  • 企业支付的租金在汇算时可一次性税前扣除
  • 合伙企业所得税怎么征收
  • 购买材料,收回会计分录
  • 工程施工科目有没有伙食费啊
  • 转让不动产销项税
  • 小微企业减免增值税申报表填写
  • 公司购买的货架入哪个科目
  • 费用已付发票未到的预算会计分录
  • 多缴纳个人所得税怎么办
  • 代扣代缴附加税怎么做账
  • 银行收回贷款本息企业怎么做分录
  • 收到购货单位货款属于什么会计科目
  • 企业自建房转让如何交土地增值税
  • 什么是法?法的本质特征是什么
  • 营业收入不开发票
  • 出口退税代理费用大概多少
  • 如何返还股东的出资款
  • 固定资产已入库款项已付次月开发票何时记提折旧
  • 分红个人所得税怎么交
  • 固定资产清理借贷方向增减变动
  • win11dns电脑服务器未响应如何处理
  • 家常煲汤500例的做法窍门
  • 如何打印word文档手机上
  • 基本户里面的钱的用途
  • 计算机网络默认网关什么意思
  • linux桌面不见了
  • win10更新kb5005033
  • mcrlnstaller
  • 现金流量表中收入是含税收入还是不含税
  • mcshield.exe是什么进程
  • 原材料运费可以计入制造费用吗
  • 结转商品的成本的会计分录
  • PHP:jdtojewish()的用法_日历函数
  • 夫妻房子归属权问题
  • 计提坏账准备和转销坏账准备
  • 钢管租赁费如何计算
  • javatoken生成机制
  • php文件怎么写
  • 帝国cms真的很好用
  • 人民法院司法警察警用装备
  • 列入固定资产的金额标准
  • 超出python用什么
  • 非盈利组织捐赠物资收入账务处理流程
  • 小企业会计准则主要按照什么计量
  • 企业所得税汇算清缴扣除标准2023
  • 个体户一年能开多少票不用交税
  • 公司注销实收资本有余额怎么处理
  • 用人单位垫付生育津贴垫付金额和垫付天数
  • 1000元的打印机双十一满减可以减150吗少
  • 没有发票可以先付款吗
  • 固定资产3%减按2%征收增值税申报表如何填写
  • 长期挂账应付款的处理方法
  • 同城票据交换原理
  • 税控维护费是什么意思
  • 冲减多计提的工资摘要怎么写
  • 劳务外包账务
  • 固定资产一旦处于什么状态
  • 在岗职工平均工资在哪里查询
  • mac 锁屏
  • wincomp.exe - wincomp进程是什么意思
  • windows取消定时任务
  • directx device
  • win10系统自带的浏览器叫什么
  • win10怎么取消禁用
  • win7更改电脑设置在哪里
  • centos 安装chia
  • 英雄联盟windows10
  • Linux上PPTP VPN的一键安装以及设置开机启动的方法
  • 拖曳对象时用的命令
  • 置顶的朋友圈屏蔽的人能看到吗
  • bootstrap 下拉按钮
  • javascript有哪些常用的属性和方法
  • 统计重复出现的次数
  • 全面理解和准确把握新时代党的建设总要求心得体会
  • javascript怎么学
  • 慧付钱包app官网下载
  • 税务局政务公开目录
  • 吉林省耕地面积有多少万亩
  • 小规模纳税人销售自己使用过固定资产
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设