为了账号安全,请及时绑定邮箱和手机立即绑定

为什么demo不能用

我下载了demo 调用  CommonOkHttpClient.post(CommonRequest.createPostRequest(url,params),handler);  怎么提示是    java.lang.ExceptionInInitializerError  这个错误的  。。不能用。

正在回答

2 回答

请问在那里下载的   ,地址是多少?


0 回复 有任何疑惑可以回复我~

你好.由于

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

返回null导致

因为OKhttpClient类中的sslSocketFactory()方法实现,有一个非空判断(看下面的代码第二行)

public Builder sslSocketFactory(SSLSocketFactory sslSocketFactory) {
 if (sslSocketFactory == null) throw new NullPointerException("sslSocketFactory == null");
 X509TrustManager trustManager = Platform.get().trustManager(sslSocketFactory);
 if (trustManager == null) {
   throw new IllegalStateException("Unable to extract the trust manager on " + Platform.get()
       + ", sslSocketFactory is " + sslSocketFactory.getClass());
 }
 this.sslSocketFactory = sslSocketFactory;
 this.certificateChainCleaner = CertificateChainCleaner.get(trustManager);
 return this;
}

修改方法:


在httputils类中添加

private static final X509Certificate[] AcceptedIssuers = new X509Certificate[] {};

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

返回 AcceptedIssuers 问题解决

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么demo不能用

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信