import java.io.BufferedReader;import java.io.InputStreamReader;import java.net.URLEncoder;import java.security.KeyStore;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Map.Entry;import org.apache.http.HttpResponse;import org.apache.http.HttpVersion;import org.apache.http.client.HttpClient;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.methods.HttpPost;import org.apache.http.conn.ClientConnectionManager;import org.apache.http.conn.scheme.PlainSocketFactory;import org.apache.http.conn.scheme.Scheme;import org.apache.http.conn.scheme.SchemeRegistry;import org.apache.http.conn.ssl.SSLSocketFactory;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;import org.apache.http.message.BasicNameValuePair;import org.apache.http.params.BasicHttpParams;import org.apache.http.params.HttpParams;import org.apache.http.params.HttpProtocolParams;import org.apache.http.protocol.HTTP;import org.apache.http.util.EntityUtils;import android.content.Context;import android.net.ConnectivityManager;/** * 网络工具类 *  * @author malinkang *  */public class NetUtils {    /**     * 对网络连接状态进行判断     *      * @return true, 可用; false, 不可用     */    public static boolean isOpenNetwork(Context context) {        ConnectivityManager connManager = (ConnectivityManager) context                .getSystemService(Context.CONNECTIVITY_SERVICE);        if (connManager.getActiveNetworkInfo() != null) {            return connManager.getActiveNetworkInfo().isAvailable();        }        return false;    }    /**     * get请求     *      * @param urlString     * @param params     * @return     */    public static String getRequest(String urlString, Map<String, String> params) {        try {            StringBuilder urlBuilder = new StringBuilder();            urlBuilder.append(urlString);            if (null != params) {                urlBuilder.append("?");                Iterator<Entry<String, String>> iterator = params.entrySet()                        .iterator();                while (iterator.hasNext()) {                    Entry<String, String> param = iterator.next();                    urlBuilder                            .append(URLEncoder.encode(param.getKey(), "UTF-8"))                            .append('=')                            .append(URLEncoder.encode(param.getValue(), "UTF-8"));                    if (iterator.hasNext()) {                        urlBuilder.append('&');                    }                }            }            // 创建HttpClient对象            HttpClient client = getNewHttpClient();            // 发送get请求创建HttpGet对象            HttpGet getMethod = new HttpGet(urlBuilder.toString());            HttpResponse response = client.execute(getMethod);            // 获取状态码            int res = response.getStatusLine().getStatusCode();            if (res == 200) {                StringBuilder builder = new StringBuilder();                // 获取响应内容                BufferedReader reader = new BufferedReader(                        new InputStreamReader(response.getEntity().getContent()));                for (String s = reader.readLine(); s != null; s = reader                        .readLine()) {                    builder.append(s);                }                return builder.toString();            }        } catch (Exception e) {        }        return null;    }    /**     * post请求     *      * @param urlString     * @param params     * @return     */    public static String postRequest(String urlString,            List<BasicNameValuePair> params) {        try {            // 1. 创建HttpClient对象            HttpClient client = getNewHttpClient();            // 2. 发get请求创建HttpGet对象            HttpPost postMethod = new HttpPost(urlString);            postMethod.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));            HttpResponse response = client.execute(postMethod);            int statueCode = response.getStatusLine().getStatusCode();            if (statueCode == 200) {                System.out.println(statueCode);                return EntityUtils.toString(response.getEntity());            }        } catch (Exception e) {        }        return null;    }    // 保存时+当时的秒数,    public static long expires(String second) {        Long l = Long.valueOf(second);        return l * 1000L + System.currentTimeMillis();    }    private static HttpClient getNewHttpClient() {        try {            KeyStore trustStore = KeyStore.getInstance(KeyStore                    .getDefaultType());            trustStore.load(null, null);            SSLSocketFactory sf = new SSLSocketFactoryEx(trustStore);            sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);            HttpParams params = new BasicHttpParams();            HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);            HttpProtocolParams.setContentCharset(params, HTTP.UTF_8);            SchemeRegistry registry = new SchemeRegistry();            registry.register(new Scheme("http", PlainSocketFactory                    .getSocketFactory(), 80));            registry.register(new Scheme("https", sf, 443));            ClientConnectionManager ccm = new ThreadSafeClientConnManager(                    params, registry);            return new DefaultHttpClient(ccm, params);        } catch (Exception e) {            return new DefaultHttpClient();        }    }}

更多相关文章

  1. 类和 Json对象
  2. Android(安卓)-- App生成快捷方式
  3. android java.util.ConcurrentModificationException
  4. android异步加载图片
  5. Android(安卓)同步请求导致系统崩溃android.os.NetworkOnMainThr
  6. Android之UtilsRequesServicetHelp工具类
  7. android之网络请求框架OKhttp、原生http请求
  8. android升级数据库(Sqlite)简单示例
  9. android 创建快捷方式

随机推荐

  1. android 里面资源应用 Drawable
  2. win10下使用Fiddler进行网络抓包
  3. android批量安装APK
  4. Dalvik虚拟机JNI方法的注册过程分析
  5. android listview 嵌套ListView,子lv高度
  6. 我的太鼓达人iPhone(未启动)
  7. 对iOS APP视觉设计师的一些不成熟的小建
  8. Android学习笔记(第一篇)编写第一个程序H
  9. 从罗马帝国精英军团/秦帝国军制谈iOS/And
  10. android开发动态页面时常用的LayoutInfla