HttpClient выполнение HttpPost значительно медленнее на Android 3.2, чем 2.3.3

Кто-нибудь знает, почему код ниже будет работать примерно в 4 раза медленнее на Android 3.2 (Samsung Galaxy 10.1" Tab), чем на 2.3.3 (Motorola Droid X)?

На Android 2.3.3 вызов client.execute() занимает в среднем 350 мс. В версии 3.2 он занимает в среднем 1400 мс.

Кроме того, результаты одинаковы независимо от того, выполняется ли вызов в потоке пользовательского интерфейса или в фоновом потоке.

Это ошибка ОС или аппаратная проблема? Или я что-то не так делаю в своем коде? К сожалению, я не могу подключить ADB к моему виртуальному устройству 3.2, поэтому я не могу исключить аппаратные проблемы, но моя интуиция подсказывает мне, что это проблема Honeycomb.

HttpResponse resp = null;
HttpParams params = new BasicHttpParams();
params.setParameter(CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1);
HttpClient client = new DefaultHttpClient(params);
ArrayList<BasicNameValuePair> postParms = new ArrayList<BasicNameValuePair>();
postParms.add(new BasicNameValuePair("name", "test"))

try
{
    HttpPost hp = new HttpPost("http://myserver/path/method");
    UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(postParms);
    hp.setEntity(formEntity);

    Long start = SystemClock.elapsedRealtime();
    resp = client.execute(hp);
    Long stop = SystemClock.elapsedRealtime();
    Log.i("Time = " + (stop-start) + "ms");
}
...
6
задан d60402 5 February 2012 в 20:49
поделиться