这是我第一次在Play商店发布应用程序而我的应用程序被拒绝。
这是来自Google Play的消息:
如何修复包含TrustManager不安全实现的应用。 ......
要正确处理SSL证书验证,请更改您的代码 自定义X509TrustManager接口的checkServerTrusted方法 无论何时提出CertificateException或IllegalArgumentException 服务器提供的证书不符合您的期望
这是我的自定义TrustManager:
public static OkHttpClient getUnsafeOkHttpClient(final X509TrustManager tm) {
try{
//Create a trust manager taht does not validate certificate chains
final TrustManager[] trustAllCerts = new TrustManager[] {new X509TrustManager() {
@Override
public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
try{
tm.checkClientTrusted(chain, authType);
}catch (CertificateException ce){}
}
@Override
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException{
if(chain == null || chain.length == 0)throw new IllegalArgumentException("certificate is null or empty");
if(authType == null || authType.length() == 0) throw new IllegalArgumentException("authtype is null or empty");
if(!authType.equalsIgnoreCase("RSA"))throw new CertificateException("certificate is not trust");
tm.checkServerTrusted(chain,authType);
}
@Override
public X509Certificate[] getAcceptedIssuers() {
return tm.getAcceptedIssuers();
}
}};
我必须实现chekcServerTrusted方法,我尝试过多次实现,但我的应用程序总是被拒绝。
请帮助或提出问题。
答案 0 :(得分:0)
我找到了一个解决方案,Google给我发了一封电子邮件,说Flurry Agent就是问题所在。 有必要删除Flurry Agent.strong文本的所有实例