我想通过https在android中与OCS服务器建立安全连接。android:如何接受CA证书
我发现EasySSLFactory和EasyX509TrustManager类使android信任证书,但我不知道如何初始化一次EasySSLFactory和EasyX509TrustManager对象。
我有下面的代码,以接受证书,并作出单一的连接:
SchemeRegistry schemeRegistry = new SchemeRegistry();
schemeRegistry.register(new Scheme("https", new EasySSLSocketFactory(),
443));
HttpParams params = new BasicHttpParams();
params.setParameter(ConnManagerPNames.MAX_TOTAL_CONNECTIONS, 3);
params.setParameter(ConnManagerPNames.MAX_CONNECTIONS_PER_ROUTE,
new ConnPerRouteBean(1));
params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, false);
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, "utf8");
int timeoutConnection = 1000;
HttpConnectionParams.setConnectionTimeout(params, timeoutConnection);
int timeoutSocket = 1000;
HttpConnectionParams.setSoTimeout(params, timeoutSocket);
clientConnectionManager = new ThreadSafeClientConnManager(params,
schemeRegistry);
HttpClient client = new DefaultHttpClient(clientConnectionManager,
params);
为了使在一个新的方法新的连接,我要做写那些线条太... 有没有办法,我可以把他们在类的构造函数,然后做那类连接,无需编写连接前..
谢谢
嗨萨克斯,谢谢你的回复。它帮助我以某种方式,但问题是,我的应用程序是一个即时通讯客户端,它必须连接到大量的ocs服务器,我不能收集所有服务器的所有可能的证书:(你有另一种解决方案吗?谢谢非常多! – Cata 2011-01-21 06:31:56