httpurlconnection jest bardzo powolny na Androidzie 4.2

Mogę z powodzeniem łączyć, wysyłać i odbierać dane za pomocą httpurlconnection. Ale ładowanie wszystkich danych na mój telefon (Samsung s4, 4.2) i emulator Androida 4.2 zajmuje bardzo dużo czasu. Jednak ładowanie zdjęć na emulator Androida 2.3.x zajmuje prawie 1-2 sekundy (co jest bardzo szybkie). Szybciej niż moja galaktyka s4 na połączeniu http.

Używam AsyncTask i mój kod działa dobrze na obu. To jest powolne na Androida 4.2. Próbowałem usunąć chunkedStreaming, zachować życie, zmienić wartości limitu czasu itp., Ale nadal nie udało się

Oto mój kod

HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
                 urlConnection.setRequestMethod("POST");
                 urlConnection.setDoOutput(true);
                 urlConnection.setDoInput(true); 

                 urlConnection.setUseCaches(false);
                 urlConnection.setChunkedStreamingMode(0);
                 urlConnection.setRequestProperty("Connection", "Keep-Alive");
                 urlConnection.setConnectTimeout(6000);
                 urlConnection.setReadTimeout(6000);
                 urlConnection.setRequestProperty("Content-Type", "multipart/form-data;charset=UTF-8;boundary="+boundary);

                 urlConnection.connect();

Czy są jakieś różnice między httpurlconnections w wersji 4.2 i 2.3.x? Co tu jest nie tak

AKTUALIZACJA!

Przetestowałem za pomocą Log.e (), aby zobaczyć, która linia zajmuje najwięcej czasu.

///// other staff
////......
                     Log.e("HTTP","3");

                 if (isCancelled())
                        return (null); // don't forget to terminate this method
                 Log.e("HTTP","3");
                 //Output
                    DataOutputStream outputStream = new DataOutputStream( urlConnection.getOutputStream() );
                    //Send Passcode
                    Log.e("HTTP","4");

Między 3 a 4, 5-6 sekund przechodzi na linii

DataOutputStream outputStream = new DataOutputStream( urlConnection.getOutputStream() );

AKTUALIZACJA!!

Ten czas oczekiwania (patrz poprzednia aktualizacja) jest związany z urlConnection.setConnectTimeout (6000);

Kiedy ustawiam Timeout 1000, szybko reaguję na połączenia (czekam 1 sekundę na linię)

DataOutputStream outputStream = new DataOutputStream( urlConnection.getOutputStream() );

Nie mam pojęcia, dlaczego tak się dzieje

questionAnswers(2)

yourAnswerToTheQuestion