Android получить изображение из URL проблемы SingleClientConnManager - PullRequest
1 голос
/ 11 мая 2011

Я использую следующий код, чтобы получить изображения логотипа и сохранить его в базе данных.

DefaultHttpClient mHttpClient = new DefaultHttpClient();
HttpGet mHttpGet;
HttpResponse mHttpResponse;
HttpEntity entity;


for (int reportsCount = 0; reportsCount < reportsArr.length; reportsCount++) {



  //Make a request to get our image
  mHttpGet = new HttpGet(reportsArr[reportsCount][1]);
  byte[] categoryLogoArr = null; 
  try {
    mHttpResponse = mHttpClient.execute(mHttpGet);

    if (mHttpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {


       entity = mHttpResponse.getEntity();

       logoArr= EntityUtils.toByteArray(entity);

    }
   } catch (ClientProtocolException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (IOException e) {
   // TODO Auto-generated catch block
    e.printStackTrace();
   }

   long categoryID = dataHelper.addCategory(reportsArr[reportsCount][0], categoryLogoArr);
}

Первое изображение добавлено отлично, но в остальных случаях оно не работает и выдает следующее предупреждение.

WARN/SingleClientConnManager(2389): Invalid use of SingleClientConnManager: connection still allocated.

В чем проблема в моем коде? Что изменить, чтобы решить это?

1 Ответ

0 голосов
/ 11 мая 2011

Вам необходимо использовать контент, прежде чем вы сможете повторно использовать соединение.Это может быть дубликат Исключение с использованием HttpRequest.execute (): недопустимое использование SingleClientConnManager: соединение все еще выделено

Я думаю, что вам нужно использовать содержимое, даже если код ответа неHttpStatus.SC_OK и в ваших обработчиках исключений.

...