Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
#1

Не идет программа после цикла while - Android

13.11.2016, 12:59. Просмотров 225. Ответов 21
Метки нет (Все метки)

Есть программа которая должна считывать данные с входящего Json и формировать ссылки, потом возвращать в класс doInBackground
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public ArrayList Loop(JSONArray response) throws JSONException {
        ArrayList posts = new ArrayList();
        String str;
        int i = 1;
        String res;
        while (i <= lenght) {
            JSONObject object = response.getJSONObject(i);
            str = object.names().toString();
            String id = object.getString("id");
            String owner_id = object.getString("owner_id");
            Matcher matcher = Pattern.compile("post_id").matcher(str);
            if (matcher.find()){
                res = matcher.group(0);
                posts.add("https://blabla"+owner_id+"_"+object.getString("post_id"));
            }
            else{
                posts.add("https://blabla"+owner_id+"_"+id);
            }
            i++;
        }
        Log.d("log", Integer.toString(posts.size())+"|");
        return posts;
    }
Все что идет после строк
Java
1
2
i++;
        }
НЕ ВЫПОЛНЯЕТСЯ, я не знаю в чем дело
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2016, 12:59     Не идет программа после цикла while
Посмотрите здесь:

POST запрос на один сайт идет на другой не проходит Android
Android Диалог "идет загрузка" при старте
Организация бесконечного цикла с минимальной загрузкой UI потока Android
Задержка выполнения цикла Android
Android Заполнить ArrayList из цикла
Блокировка кнопки, пока идет обратный таймер Android
На эмуляторе самая простая программа идет, а на телефон не устанавливается Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 13:02     Не идет программа после цикла while #2
чему там равно lenght сказать не желаешь?
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 13:03  [ТС]     Не идет программа после цикла while #3
Паблито, lenght = 30
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 13:10     Не идет программа после цикла while #4
Цитата Сообщение от Truwa Посмотреть сообщение
НЕ ВЫПОЛНЯЕТСЯ
откуда информация?
Цитата Сообщение от Truwa Посмотреть сообщение
lenght = 30
откуда информация?
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 13:31  [ТС]     Не идет программа после цикла while #5
Паблито, сразу после нее пишу Log.d("Log","Run");
А в logcat нету ничего
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 13:36     Не идет программа после цикла while #6
Цитата Сообщение от Truwa Посмотреть сообщение
сразу после нее
после чего "нее"?
и что насчет второго вопроса из моего сообщения
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 13:39  [ТС]     Не идет программа после цикла while #7
Паблито,

Java
1
2
3
i++;
        }
Log.d("Log","Run");
при выполнении такого кода в logcat ничего нет
lenght беретс из загружаемого json файла, целостность которого проверяется перед выгрузкой в цикл
shavuz
76 / 82 / 13
Регистрация: 29.01.2014
Сообщений: 369
13.11.2016, 13:39     Не идет программа после цикла while #8
и где инициализация length?
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 13:41  [ТС]     Не идет программа после цикла while #9
int lenght = response.lenght();
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 13:41     Не идет программа после цикла while #10
Цитата Сообщение от Truwa Посмотреть сообщение
lenght беретс из загружаемого json файла, целостность которого проверяется перед выгрузкой в цикл
вывести значение lenght ПЕРЕД циклом и посмотреть чему оно равно?
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 13:42  [ТС]     Не идет программа после цикла while #11
Паблито, пробывал, в примере который я беру обычно - 30
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 13:45     Не идет программа после цикла while #12
значит тут
Java
1
JSONObject object = response.getJSONObject(i);
случается исключение, которое ты бросаешь выше throws JSONException

смотри внимательно логи - оно там полюбому есть и где-то выше по коду должен быть try - catch
ExFau$t
123 / 106 / 14
Регистрация: 08.05.2012
Сообщений: 726
13.11.2016, 13:47     Не идет программа после цикла while #13
либо полей таких нет в json, либо другой тип этих полей, короче по-любому должно быть в логах что-то.
shavuz
76 / 82 / 13
Регистрация: 29.01.2014
Сообщений: 369
13.11.2016, 13:48     Не идет программа после цикла while #14
а дебаг на строке ретерн останавливается? поставьте лог после ай++ до скобки, посмотрите сколько раз его распечатает
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 13:50  [ТС]     Не идет программа после цикла while #15
shavuz, Ставил лог после i - все печатает, после скобки - нет
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 13:53     Не идет программа после цикла while #16
оно тебе печатает раз или два или три, а потом вылетает исключение
читай внимательно что тебе пишут
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 13:54  [ТС]     Не идет программа после цикла while #17
Паблито, работает ровно 30 раз
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 13:58     Не идет программа после цикла while #18
Цитата Сообщение от Truwa Посмотреть сообщение
работает ровно 30 раз
Цитата Сообщение от Паблито Посмотреть сообщение
читай внимательно что тебе пишут
Цитата Сообщение от Паблито Посмотреть сообщение
а потом вылетает исключение
попытка 2
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 41
13.11.2016, 14:03  [ТС]     Не идет программа после цикла while #19
И как мне это исправить?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2016, 14:16     Не идет программа после цикла while
Еще ссылки по теме:

Таймер внутри цикла Android
Android Не идет скачивание файлов через приложение
Android Программа вылетает после обновления на 5.0
Не срабатывает код после цикла Android
Запретить смену ориентации экрана пока идет загрузка Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Паблито
резкий
1958 / 1693 / 525
Регистрация: 12.05.2014
Сообщений: 6,038
Завершенные тесты: 1
13.11.2016, 14:16     Не идет программа после цикла while #20
очевидно не бросать исключение выше в метод, а обрабатывать его там, в методе Loop(), внутри цикла
Yandex
Объявления
13.11.2016, 14:16     Не идет программа после цикла while
Ответ Создать тему
Опции темы

Текущее время: 04:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru