码迷,mamicode.com
首页 > 移动开发 > 详细

Android 开源框架Universal-Image-Loader加载https图片

时间:2015-07-20 12:15:29      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:

解决方案就是

  需要 android https HttpsURLConnection 这个类忽略证书

1,找到 Universal-Image-Loader的library依赖包下面com.nostra13.universalimageloader.core.download下面的BaseImageDownloader这个类

里面的createConnection这个方法,添加如下:

 1 protected HttpURLConnection createConnection(String url, Object extra)
 2             throws IOException {
 3 
 4         try {
 5             HttpsURLConnection
 6                     .setDefaultHostnameVerifier(new NullHostNameVerifier());
 7             SSLContext sc = SSLContext.getInstance("TLS");
 8             sc.init(null, trustAllCerts, new SecureRandom());
 9             HttpsURLConnection
10                     .setDefaultSSLSocketFactory(sc.getSocketFactory());
11         } catch (KeyManagementException e) {
12             e.printStackTrace();
13         } catch (NoSuchAlgorithmException e) {
14             e.printStackTrace();
15         }
16 
17         String encodedUrl = Uri.encode(url, ALLOWED_URI_CHARS);
18         HttpURLConnection conn = (HttpURLConnection) new URL(encodedUrl)
19                 .openConnection();
20         conn.setConnectTimeout(connectTimeout);
21         conn.setReadTimeout(readTimeout);
22         return conn;
23     }

 

1 public class NullHostNameVerifier implements HostnameVerifier {
2 
3         @Override
4         public boolean verify(String hostname, SSLSession session) {
5             Log.i("RestUtilImpl", "Approving certificate for " + hostname);
6             return true;
7         }
8 
9     }

 

// Create a trust manager that does not validate certificate chains
    TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() {
        public X509Certificate[] getAcceptedIssuers() {
            return null;
        }

        public void checkClientTrusted(X509Certificate[] certs, String authType) {
        }

        public void checkServerTrusted(X509Certificate[] certs, String authType) {
        }
    } };

 

参考博客:http://blog.csdn.net/a102111/article/details/44311059

 

需要直接用改好jar包的下载地址:http://download.csdn.net/detail/yang7162082/8915429

 

  

Android 开源框架Universal-Image-Loader加载https图片

标签:

原文地址:http://www.cnblogs.com/androidxiaoyang/p/4660845.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!