Android Okhttp使用Https一步到位!EasyHttps使用教程

Okhttp框架耳熟能祥了,现在还有了okgo之类的二次开发框架,对于初学者来说Retrofit+rxjava之类的东西,代码也很多了,也没什么新意了。今天来讲讲,怎么使得OKHTTP几行代码支持HTTPS。

1.集成EasyHttps的依赖

1.1 将你的根目录下的build.gradle文件中添加仓库设置
    
    allprojects {
        repositories {
                        maven { 
                            url 'https://jitpack.io'
                             }
                        }
            }
            


1.2Add the dependency
1.2在你的APP中的build.gradle中添加依赖
     dependencies {
         implementation 'com.github.weishubaoforwork:EasyHttps:1.0'
            }

 

使用EasyHttps进行绕过证书对Https进行请求  (没有证书可以使用这一步)

        1 OkhttpClient的Builder设置以下代码

 

    okHttpClient = new OkHttpClient();
            okHttpClient.newBuilder()
                    .connectTimeout(10, TimeUnit.SECONDS)
                    .readTimeout(10, TimeUnit.SECONDS)
                    .writeTimeout(10, TimeUnit.SECONDS).sslSocketFactory(HttpsUtils.getSslSocketFactory(null,null,null))
                    .hostnameVerifier(new HostnameVerifier() {
                        @Override
                        public boolean verify(String s, SSLSession sslSession) {
                            return true;
                        }
                    });

使用EasyHttps进行自定义证书对Https进行请求 (有证书的这样写)

           1  请先将你的同事提供给你的.cer自定义证书文件放入Assets文件夹下,没有的自己创建一个

           2  OkhttpClient的Builder设置以下代码

          okHttpClient = new OkHttpClient();
            okHttpClient.newBuilder()
                       .connectTimeout(10, TimeUnit.SECONDS)
                       .readTimeout(10, TimeUnit.SECONDS)
                       .writeTimeout(10, TimeUnit.SECONDS)  
                       .sslSocketFactory(HttpsUtils.getSSlFactory(context,"certificate.cer")).hostnameVerifier(new HostnameVerifier() {
                   @Override
                   public boolean verify(String s, SSLSession sslSession) {
                       return true;
                   }
               });

 

Github地址:https://github.com/weishubaoforwork/EasyHttps

喜欢的朋友点个赞,您的支持是我最大的动力 

你可能感兴趣的:(Android Okhttp使用Https一步到位!EasyHttps使用教程)