Nohttp 获取图片Bitmap
Nohttp请求图片的两种简答的方式:普通请求以及缓存请求
开局声明:这是基于nohttp1.0.4-include-source.jar版本写的教程
由于nohttp功能强悍,因此需要多种权限,仅仅一个联网的权限是不够的,如果只给了Internet的权限,去请求网络将还会报错:
onFailed: com.yolanda.nohttp.error.NetworkError: The network is not available, please check the network. The requested url is: http://www.sciencenet.cn/xml/iphoneinterface.aspx?type=news&nums=20
首先是初始化整个应用全局的请求队列
1 package com.qg.lizhanqi.nohttpdemo; 2 3 import android.app.Application; 4 5 import com.yolanda.nohttp.NoHttp; 6 7 /** 8 * Created by lizhanqi on 2016-7-28-0028. 9 */ 10 public class MyApplication extends Application { 11 @Override 12 public void onCreate() { 13 //对你没看错就是这么一行就这么简单,NOhttp就是这么简单 14 NoHttp.initialize(this); 15 super.onCreate(); 16 } 17 }
//普通的请求
1 public void noHttpLoadImag(String url) { 2 //第一步:创建Nohttp请求对列(如果是本类使用的比较频繁,在onCreate的时候初始化一次就行了,这里是为了怕忘记这个步骤) 3 requestQueues = NoHttp.newRequestQueue(); 4 //第二步:创建请求对象(url是请求路径, RequestMethod.POST是请求方式) 5 final Request<Bitmap> imageRequest = NoHttp.createImageRequest(url);//这里 RequestMethod.GET可以不写(删除掉即可),默认的是Get方式请求 6 //第三步:加入到请求对列中,requestQueues.add()分别是请求列的请求标志,请求对象,监听回调 7 requestQueues.add(4, imageRequest, new SimpleResponseListener<Bitmap>() { 8 @Override//成功后的回调 9 public void onSucceed(int i, Response<Bitmap> response) { 10 imageView.setImageBitmap(response.get()); 11 } 12 13 @Override//失败后的回调 14 public void onFailed(int i, String s, Object o, Exception e, int i1, long l) { 15 } 16 }); 17 }
//带有缓存的请求图片
1 public void noHttpLoadCacheImag(String url) { 2 //第一步:创建Nohttp请求对列(如果是本类使用的比较频繁,在onCreate的时候初始化一次就行了,这里是为了怕忘记这个步骤) 3 requestQueues = NoHttp.newRequestQueue(); 4 //第二步:创建请求对象(url是请求路径, RequestMethod.POST是请求方式) 5 Request<Bitmap> imageRequest = NoHttp.createImageRequest(url);//这里 RequestMethod.GET可以不写(删除掉即可),默认的是Get方式请求 6 //第三步:设置请求缓存的五种模式:(这里与文字缓存一样) 7 //DEFAULT是http标准协议的缓存 8 //imageRequest.setCacheMode(CacheMode.DEFAULT); 9 //REQUEST_NETWORK_FAILED_READ_CACHE请求失败返回上次缓存的数据(建议使用这种) 10 imageRequest.setCacheMode(CacheMode.REQUEST_NETWORK_FAILED_READ_CACHE); 11 //NONE_CACHE_REQUEST_NETWORK在没有缓存再去请求网络 12 // imageRequest.setCacheMode(CacheMode.NONE_CACHE_REQUEST_NETWORK); 13 // ONLY_READ_CACHE仅仅请求缓存,如果没有缓存就会请求失败 14 //imageRequest.setCacheMode(CacheMode.ONLY_READ_CACHE); 15 //ONLY_REQUEST_NETWORK仅仅请求网络不支持302重定向 16 // imageRequest.setCacheMode(CacheMode.ONLY_REQUEST_NETWORK); 17 18 //第四步:加入到请求对列中,requestQueues.add()分别是请求列的请求标志,请求对象,监听回调 19 requestQueues.add(5, imageRequest, new SimpleResponseListener<Bitmap>() { 20 @Override//请求成功的回调 21 public void onSucceed(int i, Response<Bitmap> response) { 22 imageView.setImageBitmap(response.get()); 23 } 24 @Override//请求失败的回调 25 public void onFailed(int i, String s, Object o, Exception e, int i1, long l) { 26 } 27 }); 28 }
Nohttp 获取图片Bitmap相关推荐
- android通过BitmapFactory.decodeFile获取图片bitmap报内存溢出的解决办法
android通过BitmapFactory.decodeFile获取图片bitmap报内存溢出的解决办法 原方法: public static Bitmap getSmallBitmap(Strin ...
- android 获取图片bitmap对象,Android中Glide获取图片Path、Bitmap用法详解
脚本之家在此之前给大家介绍过图片加载框架Glide的基本用法介绍,大家可以先参考一下,本篇内容更加深入的分析了Glide获取图片Path.Bitmap用法,以及实现的代码分析. 1. 获取Bitmap ...
- java bitmap获取图片大小_android 通过uri获取bitmap图片并压缩
很多人在调用图库选择图片时会在onActivityResult中用Media.getBitmap来获取返回的图片,如下: Uri mImageCaptureUri = data.getData(); ...
- android 代码获取图片信息吗,Android 通过网络获取图片的代码
Android 通过网络获取图片的代码 主activity package com.netimg; import android.app.Activity; import android.graphi ...
- android获取图片缩略图,Android系获取图片和视频的缩略图
获取手机里视频缩略图: public static Bitmap getVideoThumbnail(ContentResolver cr,Uri uri) { Bitmap bitmap = nul ...
- android中获取图片、获取图片像素、处理像素等基础知识
一.android获取图片的主要方法. (1).利用BitmapFactory.decode..各种方式获取资源.sd卡的图片,从这可以看出android都是以位图的形式加载的图片的,jpg.png等 ...
- android 获取图片
Android获取手机或者内存卡里面的图片有两种方式 1.这是通过一种action Intent intent=new Intent();intent.setAction(Intent.ACTION_ ...
- php拍照从手机相册中选择,Android获取图片:拍照和从相册中选择
概述 在Android开发中获取图片主要包括如下两种方式: 打开相机拍照 从图库中选择图片 一.打开相机拍照 打开相机拍照主要包括如下几个部分: 权限申请 打开摄像头 拍照后传回数据处理 1. 权限申 ...
- android 从相册或相机获取图片并且裁剪 支持android 7.0
1.在res/xml目录中新建一个file_paths.xml <?xml version="1.0" encoding="utf-8"?> < ...
- 安卓高级6 拍照或者从相册获取图片 并检测旋转角度或者更新画册扫描
1. 旋转角度 当我们从手机读取图片时候发现其图片旋转了90或者其他度数,比如三星拍照后的照片就是个例子.这时候我们读取出来判断角度然后在逆向回转为正向的图片 所需类 ExifInterface Ex ...
最新文章
- 2016.01.04 论文改重
- 应用 TransactionScope 报:此操作对该状态的事务无效 的错误
- 数据结构32:树存储结构
- 了解【Docker】从这里开始
- Linux deepin解决文件管理器打不开和桌面黑屏的问题
- java远程监控服务器配置_JAVA VirtualVM远程监控配置
- 【10.29周一电商,已好】中国日历的至高境界,377张震撼级插画,美到爆!
- 使用Jolokia和JMX进行客户端服务器监视
- Mysql优化(出自官方文档) - 第三篇
- Linux下安装NFS共享文件资源
- CSF 格式文件播放器 下载地址
- 【机器学习】LSTM模型原理
- 微信小程序云开发教程-手把手:小程序数据库设计
- linux系统pcre是什么作用,Linux下PCRE的安装与卸载
- 文章分享-七巧板拼凸多边形-PAUL SCOTT tangrams
- Excel学习笔记:P3-冻结窗口与分割视窗
- git克隆项目带用户名密码
- 查询数据库重复记录方法
- 一种低成本的室内定位UWB技术方案
- Snort 入侵检测系统简介