Установите локальный порт HttpClient на Android-приложение

Я - мое приложение для Android. У меня есть клиент, который должен выполнять несколько HTTP-запросов в секунду к серверу.

Я достигаю этого следующим образом:

        public class myclient implements Runnable {

           private HttpClient httpClient = null;
           private HttpParams params = null;
           private HttpGet httpRequest;

           myclient () {
                httpClient = new DefaultHttpClient();
                params = httpClient.getParams();
                httpRequest = new HttpGet(request);

                HttpConnectionParams.setConnectionTimeout(params, 60000);
                HttpConnectionParams.setSoTimeout(params, 60000);
                ...
           }

           @Override
           public void run() {

                HttpResponse response = httpClient.execute(httpRequest);
                HttpEntity entity = response.getEntity();

                BufferedHttpEntity bufferedHttpEntity = new  BufferedHttpEntity(entity);

                InStream = bufferedHttpEntity.getContent();
           ...
           }
    }

Теперь проблема: в то время как порт назначения каждого запроса является портом 80, локальный порт изменяется при каждом запросе. Это вызывает некоторые проблемы с брандмауэрами. Есть ли способ сохранить постоянный локальный порт? Я решил эту проблему в приложении.NET, установив для локального порта фиксированное значение. Но здесь это кажется невозможным. Более того, я полагаю, что изменение локального порта означает новое TCP-соединение: почему соединение не сохраняется?

0 ответов

Другие вопросы по тегам