封装UniversalImageLoader框架实现一行代码即可加载图片,且完美支持https图片请求

本文详述了解决Trust anchor for certification path not found异常,实现UniversalImageLoader框架加载HTTPS图片的过程。通过图文步骤,指导如何快速集成、创建AuthImageDownloader类和封装ImageLoaderManager,最终达到一行代码显示图片的效果。
摘要由CSDN通过智能技术生成
最近由于苹果app要求ios应用网络请求必须使用https,于是公司后端把所有的http接口改为https请求,关于数据的请求   网上也有很多的文章 看文章基本可以实现让自己的app支持https  但是由于我的图片加载是使用的第三方UniversilImageLoader  图片加载框架  在请求https网络图片时  出现了 java.security.cert.CertPathValidatorException: 

Trust anchor for certification path not found 的异常 导致图片不能加载显示,网上也查了一些资料  这方面的比较少  有一篇文章有讲到 但是比较零散  我在这里大家综合整理了一下 图文并茂 可以让你花很少的时间和精力,快速集成到自己的项目中,到了废话到此结束,上菜喽!!

第一步 在AndroidStudio中 集成UniversilImageLoader  只需一行代码  把下面的一行代码复制粘贴到你的build.gradle文件夹里 就可以了

compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
如果不清楚那个文件夹  可以参考下图



第二部:

创建一个

AuthImageDownLoader的类  继承BaseImagerDownLoader 并实现它的两个构造方法  

不清楚的可以看下图:




(图片中有些代码显示不全 不要着急  最后我会把全部代码  贴上)


第三部:封装ImageLoaderManager





第四部:

如何使用

单例模式获取ImageLoaderManager对象 调用displayImage(imageview,url)方法  传入要显示图片的View控件和图片地址  就可以啦

可以参考下图





好的  下面贴上上面用到的代码,可以直接把下面的代码复制粘贴到你的项目里  可以直接使用


第一个类  AuthImageDownloader.java


package com.sunking.mockingbot.Utils;

import android.content.Context;

import com.nostra13.universalimageloader.core.download.BaseImageDownloader;

import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;

import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.SSLSocketFactory;
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值