NetWorkUtil
import java.io.IOException;
import java.io.UnsupportedEncodingException; import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import org.json.JSONArray;
import org.json.JSONObject; import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.util.Log; import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.JsonHttpResponseHandler; public class NetWorkUtil {
private static String result;
/**
*
* 方法说明:判断是否开启网络
*
* @param mContext
* @return
*/
public static boolean isNetwork(Context mContext){
ConnectivityManager manager=(ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info=manager.getActiveNetworkInfo();
if(info==null||!info.isAvailable()){
return false;
}
return true;
}
/**
*
* 方法说明:访问网络接口,接到json数据
*
* @param mContext
* @param url
* @param jsonparams
* @return
*/
public static void getJsonData(Context mContext,String url,String jsonparams,final LoadJson loadjson){
AsyncHttpClient client=new AsyncHttpClient();
StringEntity entity;
try {
entity = new StringEntity(jsonparams, "utf-8");
client.post(mContext, url, entity, "application/json",new JsonHttpResponseHandler(){
@Override
public void onSuccess(int statusCode, JSONObject response) {
// TODO Auto-generated method stub
super.onSuccess(statusCode, response);
result=response.toString();
loadjson.getJson(response.toString());
Log.d("TAG", "请求数据成功");
}
@Override
public void onStart() {
// TODO Auto-generated method stub
super.onStart();
Log.d("TAG", "开始请求数据");
}
@Override
public void onFinish() {
// TODO Auto-generated method stub
super.onFinish();
Log.d("TAG", "请求数据结束");
}
@Override
public void onRetry() {
// TODO Auto-generated method stub
super.onRetry();
Log.d("TAG", "重试");
}
@Override
public void onFailure(Throwable e, JSONArray errorResponse) {
// TODO Auto-generated method stub
super.onFailure(e, errorResponse);
Log.d("TAG", "失败");
}
});
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// public static
/**
* HttpClient访问网络接口 (暂时)
* @param url
* @param jsonparams
* @return
* @param
* @throws
* @return
*/
public static String getHttpClientJsonData(String url,String jsonparams){ HttpPost httpPost = new HttpPost(url);
StringEntity entity;
try {
entity = new StringEntity(jsonparams, HTTP.UTF_8);
entity.setContentType("application/json");
httpPost.setEntity(entity);
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(httpPost);
if(response.getStatusLine().getStatusCode()==HttpStatus.SC_OK){
HttpEntity resEntity=response.getEntity();
result=EntityUtils.toString(resEntity, "utf-8");
}else{ }
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} return result ;
} /**
* 通过地址获取Bitmap (暂时)
* @param imageUrl
* @return
* @param
* @throws
* @return
*/
public static Bitmap loadImageFromUrl(String imageUrl){
Bitmap result = null;
HttpGet req = new HttpGet(imageUrl);
HttpParams connParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(connParams, 5 * 1000);
HttpConnectionParams.setSoTimeout(connParams, 5 * 1000);
HttpClient client = new DefaultHttpClient(connParams); try {
HttpResponse resp = client.execute(req);
if(resp.getStatusLine().getStatusCode() == HttpStatus.SC_OK){
HttpEntity respEntity = resp.getEntity();
result = BitmapFactory.decodeStream(respEntity.getContent());
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return result; }
public interface LoadJson{
void getJson(String data);
}
}
NetWorkUtil的更多相关文章
- Android NetWorkUtil
package com.android.hcframe.netdisc.util; import java.io.BufferedReader; import java.io.InputStreamR ...
- 用Java代码实现拦截区域网数据包
起因: 吃饭的时间在想如果区域网内都是通过路由器上网,那如何实现拦截整个区域网的数据包,从而实现某种窥探欲. 思路: 正常是通过电脑网卡预先设置或分配的IP+网关对路由器进行通讯,比如访问百 ...
- C#开发微信门户及应用(35)--微信支付之企业付款封装操作
在前面几篇随笔,都是介绍微信支付及红包相关的内容,其实支付部分的内容还有很多,例如企业付款.公众号支付或刷卡支付.摇一摇红包.代金券等方面的内容,这些都是微信接口支持的内容,本篇继续微信支付这一主题, ...
- C#开发微信门户及应用(33)--微信现金红包的封装及使用
我在上篇随笔<C#开发微信门户及应用(32)--微信支付接入和API封装使用>介绍为微信支付的API封装及使用,其中介绍了如何配置好支付环境,并对扫码支付的两种方式如何在C#开发中使用进行 ...
- ZooKeeper 笔记(6) 分布式锁
目前分布式锁,比较成熟.主流的方案有基于redis及基于zookeeper的二种方案. 大体来讲,基于redis的分布式锁核心指令为SETNX,即如果目标key存在,写入缓存失败返回0,反之如果目标k ...
- Android okHttp网络请求之缓存控制Cache-Control
前言: 前面的学习基本上已经可以完成开发需求了,但是在项目中有时会遇到对请求做个缓存,当没网络的时候优先加载本地缓存,基于这个需求我们来学习一直okHttp的Cache-Control. okHttp ...
- Winform混合式开发框架访问Web API接口的处理
在我的混合式开发框架里面,集成了WebAPI的访问,这种访问方式不仅可以实现简便的数据交换,而且可以在多种平台上进行接入,如Winform程序.Web网站.移动端APP等多种接入方式,Web API的 ...
- Android判断网路是否畅通加权限
权限 <uses-permission android:name="android.permission.INTERNET"/> <uses-permission ...
- AsyncTask 异步处理
1 package com.ch.day8_asynctaskdemo; 2 3 import java.util.ArrayList; 4 5 import com.ch.myutils.NetWo ...
随机推荐
- Jenkins+Maven+Gitlab+Nexus持续集成环境搭建
1.软件及服务介绍 Jenkins:jenkins是实现代码自动化流程上线的工具,Jenkins是一个独立的开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个 ...
- 开源框架Quartz动态加入、改动和删除定时任务 (二)
貌似每次回过头去看之前写的一些东西,总感觉不是非常完美~~虽说不做完美人.但也要做完美事!这次主要是针对Quartz的动态维护和Spring集成.简单粗暴一点,直接上代码,有什么不了解留言交流 先来一 ...
- hdu 5265 技巧题 O(nlogn)求n个数中两数相加取模的最大值
pog loves szh II Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- FBXImport
using UnityEditor; public class MyEditor : AssetPostprocessor{ public void OnPreprocessModel() { Mod ...
- lua_pcall,lua_call 调用前后栈情况
lua_pcall和lua_call功能一样,只是lua_pcall提供了一个可以提供错误处理函数的功能 首先压入函数 ,再依次压入参数,现在你就可以调用lua_call了,函数调用后将参数,函数都弹 ...
- 虚拟机安装Ubuntu 12.04 出现提示“Ubuntu is running in low-graphics mode?”
原文链接: http://blog.csdn.net/maimang1001/article/details/17048273 http://blog.csdn.net/bluetropic/arti ...
- H5页面在IOS下不会自动播放音乐的坑
document.addEventListener(‘DOMContentLoaded‘, function () { function audioAutoPlay() { var audio = d ...
- Mac OS X中配置Apache后提示You don't have permission to access / on this server
根据这篇博客http://www.cnblogs.com/snandy/archive/2012/11/13/2765381.html,在mac系统中,配置的apache,配置完成后,提示 You d ...
- Android Volley框架的几种post提交请求方式
首先简单描述一下Google的Android开发团队在2013年推出的一个网络通信框架Volley.它的设计目标是进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如下载文件等,Vol ...
- mysql select *... where id in (select 字符串 from ... )查询结果问题?
SQL中的写法为 ); 查询结果为: id TypeName 1 新手 2 手机 在MYSQL中 ); 查询结果为: id TypeName 1 新手 少了一条数据. 其中 查询结果为 Newcard ...