2012-02-17 14 views
10

Eventuali duplicati:
Exception using HttpRequest.execute(): Invalid use of SingleClientConnManager: connection still allocatedAndroid: utilizzo non valido di SingleClientConnManager: collegamento ancora assegnato

sto lavorando in Android. Ho creato la classe HttpSingleton per creare single-intance di HttpClient nella mia applicazione completa.

Questo è il mio codice per utilizzare questa classe: -

HttpGet get = new HttpGet("url/dologin/savitagupta/savitagupta"); 
**HttpResponse rp = HttpSigleton.getInstance().execute(get);**   
if (rp.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { 
    // some code here 
} 

e questa è la mia classe per singola istanza

public class HttpSigleton { 
    private static HttpClient instance = null; 
    protected HttpSigleton() { 

    } 
    public static HttpClient getInstance() { 
    if(instance == null) { 
     instance =new DefaultHttpClient(); 
    } 
    return instance; 
} 
} 

Poi si è verificato un errore è: -

SingleClientConnManager: non valido uso di SingleClientConnManager: connessione ancora allocata. Assicurarsi di rilasciare la connessione prima di allocarne un'altra. Per favore suggeriscimi che errore ho fatto. Ho davvero bisogno del tuo aiuto. Grazie in anticipo.

risposta

20

Dopo aver chiamato:

HttpResponse rp = HttpSigleton.getInstance().execute(get); 

Si prega di assicurarsi che si effettua una chiamata a uno:

String html = EntityUtils.toString(rp.getEntity() /*, Encoding */); 

o

EntityUtils.consume(rp.getEntity()); 
Problemi correlati