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

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

Восстановить пароль Регистрация
 
 
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 37
13.11.2016, 12:59     Не идет программа после цикла while #1
Есть программа которая должна считывать данные с входящего 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++;
        }
НЕ ВЫПОЛНЯЕТСЯ, я не знаю в чем дело
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
не спать!
1788 / 1522 / 474
Регистрация: 12.05.2014
Сообщений: 5,559
Завершенные тесты: 1
13.11.2016, 13:02     Не идет программа после цикла while #2
чему там равно lenght сказать не желаешь?
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 37
13.11.2016, 13:03  [ТС]     Не идет программа после цикла while #3
Паблито, lenght = 30
Паблито
не спать!
1788 / 1522 / 474
Регистрация: 12.05.2014
Сообщений: 5,559
Завершенные тесты: 1
13.11.2016, 13:10     Не идет программа после цикла while #4
Цитата Сообщение от Truwa Посмотреть сообщение
НЕ ВЫПОЛНЯЕТСЯ
откуда информация?
Цитата Сообщение от Truwa Посмотреть сообщение
lenght = 30
откуда информация?
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 37
13.11.2016, 13:31  [ТС]     Не идет программа после цикла while #5
Паблито, сразу после нее пишу Log.d("Log","Run");
А в logcat нету ничего
Паблито
не спать!
1788 / 1522 / 474
Регистрация: 12.05.2014
Сообщений: 5,559
Завершенные тесты: 1
13.11.2016, 13:36     Не идет программа после цикла while #6
Цитата Сообщение от Truwa Посмотреть сообщение
сразу после нее
после чего "нее"?
и что насчет второго вопроса из моего сообщения
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 37
13.11.2016, 13:39  [ТС]     Не идет программа после цикла while #7
Паблито,

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

смотри внимательно логи - оно там полюбому есть и где-то выше по коду должен быть try - catch
ExFau$t
55 / 55 / 4
Регистрация: 08.05.2012
Сообщений: 448
13.11.2016, 13:47     Не идет программа после цикла while #13
либо полей таких нет в json, либо другой тип этих полей, короче по-любому должно быть в логах что-то.
shavuz
55 / 61 / 10
Регистрация: 29.01.2014
Сообщений: 299
13.11.2016, 13:48     Не идет программа после цикла while #14
а дебаг на строке ретерн останавливается? поставьте лог после ай++ до скобки, посмотрите сколько раз его распечатает
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 37
13.11.2016, 13:50  [ТС]     Не идет программа после цикла while #15
shavuz, Ставил лог после i - все печатает, после скобки - нет
Паблито
не спать!
1788 / 1522 / 474
Регистрация: 12.05.2014
Сообщений: 5,559
Завершенные тесты: 1
13.11.2016, 13:53     Не идет программа после цикла while #16
оно тебе печатает раз или два или три, а потом вылетает исключение
читай внимательно что тебе пишут
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 37
13.11.2016, 13:54  [ТС]     Не идет программа после цикла while #17
Паблито, работает ровно 30 раз
Паблито
не спать!
1788 / 1522 / 474
Регистрация: 12.05.2014
Сообщений: 5,559
Завершенные тесты: 1
13.11.2016, 13:58     Не идет программа после цикла while #18
Цитата Сообщение от Truwa Посмотреть сообщение
работает ровно 30 раз
Цитата Сообщение от Паблито Посмотреть сообщение
читай внимательно что тебе пишут
Цитата Сообщение от Паблито Посмотреть сообщение
а потом вылетает исключение
попытка 2
Truwa
0 / 0 / 0
Регистрация: 12.11.2016
Сообщений: 37
13.11.2016, 14:03  [ТС]     Не идет программа после цикла while #19
И как мне это исправить?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2016, 14:16     Не идет программа после цикла while
Еще ссылки по теме:

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

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

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

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