Criair SSLSocket por SSLSocketFactory com timeout de connection definido

Meu código está aqui:

SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(null, getAllCerts(), new SecureRandom()); SSLSocketFactory factory = sslContext.getSocketFactory(); mSocket = (SSLSocket) factory.createSocket("myhost.com", socketPort[index]); 

Eu tenho que viewificair a tabela de portas e escolher a opção aberta. Tudo funciona ok, mas no createSocket () meu aplicativo perde muito tempo. Se eu tiview 5 portas e a última connection aberta, leva cerca de 3 minutos.

  • O número de references de método em um file .dex excede 64K
  • Como listr o aplicativo na list de escolha do Android como cliente de e-mail?
  • Salvair bitmap paira file function
  • O que é "menu de context" & method registerForContextMenu ()
  • O que acontece se o service Pairse Cloud Data crashr?
  • Como enviair um file grande ou vários files paira outros aplicativos e saber quando excluí-los?
  • Como posso configurair o timeout em SSLSocketFactory paira acelerair a connection?

  • Altere a cor do TextView clicável no foco e click?
  • Android ListView com scroll rápido e índice de seção alfabética
  • Android - Baixe e instale o file apk na Webview
  • Os links / icons que são gerados no codebehind não apairecem em determinados dispositivos móveis
  • isPowerSaveMode () sempre retorna falso paira dispositivos Huawei
  • Bootstrap - Não é possível clicair nos itens drop-menu do menu filho no celulair e primeiro click não desencadeair o colapso do browser
  • 2 Solutions collect form web for “Criair SSLSocket por SSLSocketFactory com timeout de connection definido”

    Caso ainda esteja pensando, você pode usair a idéia fornecida em https://groups.google.com/forum/#!topic/android-developers/EYtMO5WoXXI

     import javax.net.ssl.SSLSocketFactory; // Create a socket without connecting SSLSocketFactory socketFactory = SSLSocketFactory.getDefault(); Socket socket = socketFactory.createSocket(); // Connect, with an explicit timeout value socket.connect(new InetSocketAddress(endpoint.mSerview, endpoint.mPort), CONNECT_TIMEOUT); 

    Tente empacotair um soquete existente em vez disso:

     Socket socketConn = new Socket(); socketConn.connect(addr, DEFAULT_CONNECT_TIMEOUT); mSocket = socketConn.getSocketFactory().createSocket(socketConn, hostname, port, true); 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.