栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Android中Glide加载Https图片失败的解决方案

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android中Glide加载Https图片失败的解决方案

1.在使用Glide前调用

     Glide.get(this).getRegistry().replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory(getNoCheckOkHttpClient()));

2.getNoCheckOkHttpClient方法如下

    public static OkHttpClient getNoCheckOkHttpClient() {
        SSLSocketFactory ssl = getNoCheckSSLSocketFactory();
        X509TrustManager trustManager = getTrustManager();
        return new OkHttpClient.Builder()
                .connectTimeout(TimeUnit.SECONDS.toMillis(30), TimeUnit.SECONDS)
                .readTimeout(TimeUnit.SECONDS.toMillis(30), TimeUnit.SECONDS)
                .writeTimeout(TimeUnit.SECONDS.toMillis(30), TimeUnit.SECONDS)
                .sslSocketFactory(ssl, trustManager)
                .hostnameVerifier((hostname, session) -> true)
                .retryOnConnectionFailure(true)
                .build();
    }
    public static SSLSocketFactory getNoCheckSSLSocketFactory() {
        try {
            SSLContext sslContext = SSLContext.getInstance("SSL");
            sslContext.init(null, new TrustManager[] {getTrustManager()}, new SecureRandom());
            return sslContext.getSocketFactory();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    
    public static X509TrustManager getTrustManager() {
        return new X509TrustManager() {
            @Override
            public void checkClientTrusted(X509Certificate[] serverX509Certificates, String s) {}

            
            @Override
            public void checkServerTrusted(X509Certificate[] x509Certificates, String s) {}

            @Override
            public X509Certificate[] getAcceptedIssuers() {
                return new X509Certificate[0];
            }
        };
    }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/932954.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号