Size: a a a

StartAndroid Ru RxJava

2020 June 01

AP

Artem Polovin in StartAndroid Ru RxJava
всем привет, не давно начал изучать RxJava. Подскажите пожалуйста почему метод возвращает null? Я делаю запрос на сервер и данные приходят, но почемуто  в методе subscribe{} не инициализируется объект responseWeather
источник

AP

Artem Polovin in StartAndroid Ru RxJava
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
Потому что асинхронный вызов не успевает отработать
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
Подписка происходит в другом потоке. Фактически ApiService()..... можно удалить из этого метода
источник

AP

Artem Polovin in StartAndroid Ru RxJava
Владимир Бабенко
Потому что асинхронный вызов не успевает отработать
я ставил задержку в 2 секунды перед return responseWeather. Все равно возвращает null
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
Попробуй добавить обработчик ошибки. Возможно чтото падает
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
А падает в другом потоке и потому нету краша
источник

AP

Artem Polovin in StartAndroid Ru RxJava
Владимир Бабенко
Попробуй добавить обработчик ошибки. Возможно чтото падает
я добавил вывод моего объекта в лог в методе subscribe{}. В логе выводет объект который я ожидаю
источник

AP

Artem Polovin in StartAndroid Ru RxJava
Владимир Бабенко
Попробуй добавить обработчик ошибки. Возможно чтото падает
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
А где задержка в 2 секунды?
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
Я так поимаю, сначала возвращает null, а затем выводится Log
источник

AP

Artem Polovin in StartAndroid Ru RxJava
Владимир Бабенко
А где задержка в 2 секунды?
я убрал задержку. вот как это выглядело с задержкой
источник

AP

Artem Polovin in StartAndroid Ru RxJava
Владимир Бабенко
А где задержка в 2 секунды?
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
Странно. Реально должно работать. Ну дебаг в помощь) Поздно уже)
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
Но конструкция немного нестандартная
источник

AA

Artyom Afanasiev in StartAndroid Ru RxJava
Конструкция вообще не корректная, а что будет, если сервис по какой то причине будет отвечать, скажем, 10 секунд? Не ставить же слип на такое время
источник

AA

Artyom Afanasiev in StartAndroid Ru RxJava
Результат нужно получить в методе subscribe, переменная responseWeather не нужна
источник

AA

Artyom Afanasiev in StartAndroid Ru RxJava
И ошибку стоит обработать
источник

ВБ

Владимир Бабенко... in StartAndroid Ru RxJava
Ну в данной ситуации должно было отработать.
источник

AP

Artem Polovin in StartAndroid Ru RxJava
Artyom Afanasiev
Конструкция вообще не корректная, а что будет, если сервис по какой то причине будет отвечать, скажем, 10 секунд? Не ставить же слип на такое время
слип это просто ради эксперемента я не собираюсь его вообще там оставлять, и вообще как я понимаю он там не нужет так как инициализация происходит в mainThread
источник