小记:对Android网络下载工具的初步封装!(包括json,字符串下载(volley),和图片下载(glide))
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.widget.ImageView;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.Volley;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.example.nr.carton.R;
import de.hdodenhof.circleimageview.CircleImageView; /**
* Created by hjw on 2016/7/27.
*/
public class HttpUtils {
/**
* 验证当前是否有网络*/
public static boolean checkNetWork(Context ct) {
//获取连接管理对象--
ConnectivityManager cm=(ConnectivityManager) ct.getSystemService(Context.CONNECTIVITY_SERVICE);
//获取网络信息对象
NetworkInfo ni=cm.getActiveNetworkInfo();
if(ni!=null&&ni.isAvailable())//非null验证
{
return true;
}
else {
return false;
}
}
public static void downloadJson(Context context,String url,final ResultCallBack callBack){
RequestQueue mQueue = Volley.newRequestQueue(context);
MyStringRequest stringRequest = new MyStringRequest(url,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
if (response.toString()!=null){
callBack.onSuccess(response.toString());
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) { }
}); mQueue.add(stringRequest);
}
public static void downLoadPic(String url,Context context,ImageView imageView){
Glide.with(context)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.placeholder(R.drawable.bizhi)
.error(R.drawable.bizhi)
.centerCrop()
.into(imageView);
}
public static void downLoadPic1(String url,Context context,ImageView imageView){
Glide.with(context)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.placeholder(R.drawable.bizhi)
.error(R.drawable.bizhi)
.into(imageView);
}
public static void downLoadPicCircle(String url,Context context,CircleImageView imageView){
Glide.with(context)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
// .placeholder(R.mipmap.ic_launcher)
// .error(R.mipmap.ic_launcher)
.centerCrop()
.into(imageView);
}
public static void downLoadPicReSize(String url,Context context,ImageView imageView,int width,int height){
Glide.with(context)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.placeholder(R.drawable.bizhi)
.error(R.drawable.bizhi)
.centerCrop()
.override(width, height)
.into(imageView);
}
/**
*异步下载时,通过接口回掉保存和传输数据
*/
public interface ResultCallBack{
void onSuccess(String s);
//void onError();
}
}
小记:对Android网络下载工具的初步封装!(包括json,字符串下载(volley),和图片下载(glide))的更多相关文章
- swift项目第十天:网络请求工具类的封装
import UIKit /* 必须先导入头文件:import AFNetworking */ import AFNetworking //MARK:-0:定义枚举:以枚举定义请求网络的get和pos ...
- js使用工具将表单封装成json字符串传到后台,js截取字符串(学生笔记)
<script src="js/jquery.min.js"></script> <script src="https://cdn.boot ...
- wx.getImageInfo和wx.downloadFile下载用户头像报错(小程序canvas以及小程序图片下载部分)
我先上图 之前我们后台配置的 downloadFile 合法域名是 https://wx.qlogo.cn, 用了好久都没出问题, 前段时间, 用户反馈 分享海报, 用户头像出不来!!!! ...
- [No00006B]方便的网络下载工具wget 可下载网站目录下的所有文件(可下载整个网站)
wget是linux下命令行的下载工具,功能很强大,它能完成某些下载软件所不能做的,比如如果你想下载一个网页目录下的所有文件,如何做呢?网络用户有时候会遇到需要下载一批文件的情况,有时甚至需要把整个网 ...
- Android项目开发全程(四)-- 将网络返回的json字符串轻松转换成listview列表
前面几篇博文介绍了从项目搭建到获取网络字符串,对一个项目的前期整体工作进行了详细的介绍,本篇接着上篇介绍一下怎么样优雅将网络返回的json字符串轻松转换成listview列表. 先上图,看一下效果. ...
- wget下载工具
转自于:http://www.jb51.net/LINUXjishu/86326.html 1.使用wget下载单个文件 e.g. wget http://cn.wordpress.org/word ...
- Android网络编程随想录(1)
本系列文章对整个Android网络编程进行了总结,包括基本的TCP/IP协议,HTTP协议,HTTPS协议,HttpClient,UrlConnection,一些网络通信的库到棉花糖新加入的OKHTT ...
- AJ学IOS(55)多线程网络之图片下载框架之SDWebImage
AJ分享,必须精品 效果: 代码: - (NSArray *)apps { if (!_apps) { NSArray *dictArray = [NSArray arrayWithContentsO ...
- python 3编写贴吧图片下载软件(超简单)
业余时间初学者作品,大佬勿喷,代码都很简单. py文件打包成exe教程:python3.7 打包成exe程序, 本程序体验下载地址:python编译的贴吧图片下载工具 先上效果图 启动后是这样的: 按 ...
随机推荐
- pubwin2009服务端 修改系统时间方法
所有操作都是必须的,包括重启. 1.建议操作前全体结账,并交班---不结帐的话, 改完时间会出问题的.2.停止pubwin2009服务端 3.将C:\WINDOWS\system32\driver ...
- H5+Boostrap的音乐播放器
H5+Boostrap做简单的音乐播放器 前言:这个是综合一下我最近在学的东西做的小Demo,到实际使用还有距离,但是用来练手巩固知识点还是不错的,最近在二刷JS书和Boostrap.css的源码,做 ...
- C语言经典程序190例
[程序1] 题目:809*??=800*??+9*??+1 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数.求??代表的两位数,及809*??后的结果. 1.程序分析: 2.程序 ...
- web service c# 互调 java (转)
一:简介 本文介绍了Java与.NET开发的Web Services相互调用的技术.本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web Services,第二部分介绍了如何用 ...
- [置顶] SPL讲解(6)--Condition篇
SmartPersistenceLayer 2.0 之 Condition篇 原理 强大的Condition功能是SPL的一个特性,可以使用Condition完成绝大部分的条件定义,使用 ...
- html模块一些方法
<pre name="code" class="python"> find_by_tag_name: @elements = $h->find ...
- 一次使用Eclipse Memory Analyzer分析Tomcat内存溢出
转:http://tivan.iteye.com/blog/1487855 前言 在平时开发.测试过程中.甚至是生产环境中,有时会遇到OutOfMemoryError,Java堆溢出了,这表明程序有严 ...
- 2013长沙网络赛H题Hypersphere (蛋疼的题目 神似邀请赛A题)
Hypersphere Time Limit: 1 Second Memory Limit: 32768 KB In the world of k-dimension, there's a ...
- Oracle学习笔记(2)——过程和函数
过程和函数统称为PL/SQL子程序,通过输入.输出参数或输入/输出参数与其调用者交换信息.他们是被命名的PL/SQL块,被编译后存储在数据库中,以备执行.因此,可以在数据库中直接按名称使用它们. 1. ...
- Vitaliy and Pie(模拟)
Vitaliy and Pie Time Limit:2000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I64u Su ...