Модераторы: javastic
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> AsyncTask долго соображает в одном Активити, Долгий отклик AsyncTask 
:(
    Опции темы
inkognitum
Дата 28.9.2014, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 125
Регистрация: 11.8.2006
Где: г. Набережные Чел ны

Репутация: нет
Всего: 1



Добрый день! 
Столкнулся с проблемой которую никак не могу решить, да и странная она.

У меня есть свой написанный класс SendDate, который я использую для отправки данных на сервер.

В нем есть процедура Send(), которая собственно и производит отправку данных.
Вот как это выглядит:

Код

public void Send(String process)
    {
        processing = process;
        new SendParamToURL(callBackSend, URL, process).execute(ListParam);
    }

// ОТПРАВКА ДАННЫХ
    static class SendParamToURL extends AsyncTask<ArrayList<SendParam>, String, String>
    {
        private CallBackSendDate listener;
        private String URL;
        private String processing;

        public SendParamToURL(CallBackSendDate listener, String URL, String process){
            this.listener = listener;
            this.URL = URL;
            this.processing = process;
        }
        //@TargetApi(Build.VERSION_CODES.FROYO)
        @Override
        protected String doInBackground(ArrayList<SendParam>... params)
        {
            try
            {
                DefaultHttpClient hc = new DefaultHttpClient();
                ResponseHandler<String> res = new BasicResponseHandler();
                //он у нас будет посылать post запрос
                HttpPost postMethod = new HttpPost(this.URL);
                //будем передавать два параметра
                List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(params[0].size());

                //передаем параметры из наших текстбоксов
                for(SendParam info : params[0])
                {
                    nameValuePairs.add(new BasicNameValuePair(info.name, info.value));
                }

                //собераем их вместе и посылаем на сервер
                postMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs, "UTF-8"));

                //получаем ответ от сервера
                String response = hc.execute(postMethod, res);

                return response.toString();

            } catch (Exception e) {
                System.out.println("Exp=" + e);
                //listener.onError(e.toString());
            }
            return "";
        }

        @Override
        protected void onProgressUpdate(String... values) {
            super.onProgressUpdate(values);
        }

        @Override
        protected void onPostExecute(String result)
        {
            listener.onReturnAnswer(result);
            super.onPostExecute(result);
        }

        @Override
        protected void onPreExecute()
        {
            listener.onSend(processing);
            super.onPreExecute();
        }
    }


Вот собственно как я отправляю данны:
Код

public static SendDate SendDateURL;
....
SendDateURL = new SendDate();
SendDateURL.initialize(Url, sendDateCallBack);
...

SendDateURL.ClearParam();
SendDateURL.AddParam("Param1", Value1);
SendDateURL.AddParam("Param2", Value2);
SendDateURL.Send("");



Вот парадокс, конкретно данный запрос отрабатывает очень быстро, кроме одной активити.
На одной из активити выполняю данный запрос, процедура доходит до конструктора 
Код

public SendParamToURL(CallBackSendDate listener, String URL, String process)


Дальше идет какое то провисание по времени, секунд 10-15. а иногда и больше и уже после мы попадаем в процедуру:

Код

protected String doInBackground(ArrayList<SendParam>... params)


Причем это происходит только на одной активити, на всех остальных все прекрасно!
Единственное что их может отличать, то что эта активити создана после обновления Android Studio , до версии 0.8.11, больше разницы никакой, откуда это провисание по времени не понятно.

Кто сталкивался с данными проблемами?
--------------------
"Убить всех людей!" (с) Bender
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Android | Следующая тема »


 




[ Время генерации скрипта: 0.0579 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.