Size: a a a

StartAndroid Ru Chat

2020 October 30

V

Vladushka in StartAndroid Ru Chat
Vladushka
а еще , так это это приложение для обработки фото, я вообще не уверена, что тут подходит паттерн mvvm
подозреваю , что твои действия по обработки фото требуют контекст, тот же GLTextureView+Renderer, о котором ты говорил, к примеру, и у меня это не вяжется с вью моделью
не мешало бы еще раз этот вопрос поресерчить
я могу ошибаться, конечно
пока что я не понимаю, чем будет заниматься вью модель, кроме как сохранять фотки, сохранять слои мб
источник

AA

Aleksei Afanasev in StartAndroid Ru Chat
В середине (gl) отображается превью, которое также зависит от стейта, который вернулся в зависимости от работы интерактора
И тд
источник

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
Раз уж тут более опытные девелоперы,хочу попросить совета. У меня есть токен который я запрашиваю у бэка и пока он не истечет прикладываю его в каждом запросе. Я хочу чтобы при его истечении( я поймаю 401) мне нужно заставить редиректнутся на страницу логина ,чтобы заново ввели свои credentials. Сейчас я во все fragmet сую viewmodel который хранит инфу о токене. Если он истекает то observer метод фрагмента редиректит его на login fragment. Из за этого во всех фрагментах уродливый один и тот же кусок кода. Кто нибудь красиво смог это устранить?
источник

V

Vladushka in StartAndroid Ru Chat
Alexandr M
Да, с opengl не очень понятно. Я просто создал рендерер и в него передал экземпляр GLTextureView, на котором рендерер и рисует. А сам рендерер тусит во вью-модели
рендер точно не должен быть во вью модели
я не работала с opengles, но раз рендер делает какие-то юайные махинации, а значит не место ему во вью модели
источник

V

Vladushka in StartAndroid Ru Chat
Анатолий Чепига
Раз уж тут более опытные девелоперы,хочу попросить совета. У меня есть токен который я запрашиваю у бэка и пока он не истечет прикладываю его в каждом запросе. Я хочу чтобы при его истечении( я поймаю 401) мне нужно заставить редиректнутся на страницу логина ,чтобы заново ввели свои credentials. Сейчас я во все fragmet сую viewmodel который хранит инфу о токене. Если он истекает то observer метод фрагмента редиректит его на login fragment. Из за этого во всех фрагментах уродливый один и тот же кусок кода. Кто нибудь красиво смог это устранить?
у ретрофита есть интерцептор, можно ловить 401 и обрабатывать
источник

AA

Aleksei Afanasev in StartAndroid Ru Chat
Анатолий Чепига
Раз уж тут более опытные девелоперы,хочу попросить совета. У меня есть токен который я запрашиваю у бэка и пока он не истечет прикладываю его в каждом запросе. Я хочу чтобы при его истечении( я поймаю 401) мне нужно заставить редиректнутся на страницу логина ,чтобы заново ввели свои credentials. Сейчас я во все fragmet сую viewmodel который хранит инфу о токене. Если он истекает то observer метод фрагмента редиректит его на login fragment. Из за этого во всех фрагментах уродливый один и тот же кусок кода. Кто нибудь красиво смог это устранить?
Если сингл активити, можно в активити поместить этот код
Либо создать BaseFragment, наследовать от фрагмента, и пихнуть код туда
А все свои фрагменты наследовать уже от Base
Ну, я бы так сделал)
источник

КП

Константин Просолупо... in StartAndroid Ru Chat
Добрый день! Только начал изучать Android. Подскажите, как дождаться ответа в запросе retrofit и потом продолжать выполнять другой код?
источник

V

Vladushka in StartAndroid Ru Chat
Константин Просолупов
Добрый день! Только начал изучать Android. Подскажите, как дождаться ответа в запросе retrofit и потом продолжать выполнять другой код?
нужно выполнять запросы асинхронно и обрабатывать это
погугли, есть корутины, рх джава и еще куча устаревших вариантов
источник

MG

Maxim Gnatyuk in StartAndroid Ru Chat
Всем привет. Кто-то сталкивался с необходимостью оптимизации вложенных RecyclerView?
подлагивает при скролле
источник

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
Aleksei Afanasev
Если сингл активити, можно в активити поместить этот код
Либо создать BaseFragment, наследовать от фрагмента, и пихнуть код туда
А все свои фрагменты наследовать уже от Base
Ну, я бы так сделал)
Смотрите ,есть интерсептор ,он ловит 401 и меняет поле isAuthenticated на false. Во всех фрагментах я делаю observer на эту livedata и при ищменении на false он редиректит . Мне понятна ваша идея сделать базовый класс ,но только при navigation нужно же передать action откуда и куда переходить. Если даже сделать такой базовый метод, то все равно нужно писать observableв кажлом фрагменте и вызывать там этот метод унаследованный от Basefragment. Я просто незнаком с темой и если по другому никак то я окей)))
источник

AM

Alexandr M in StartAndroid Ru Chat
Maxim Gnatyuk
Всем привет. Кто-то сталкивался с необходимостью оптимизации вложенных RecyclerView?
подлагивает при скролле
Тут кое что об этом сказано
https://blog.mindorks.com/recyclerview-optimization
источник

MG

Maxim Gnatyuk in StartAndroid Ru Chat
Alexandr M
Тут кое что об этом сказано
https://blog.mindorks.com/recyclerview-optimization
спасибо!
источник

AA

Aleksei Afanasev in StartAndroid Ru Chat
Анатолий Чепига
Смотрите ,есть интерсептор ,он ловит 401 и меняет поле isAuthenticated на false. Во всех фрагментах я делаю observer на эту livedata и при ищменении на false он редиректит . Мне понятна ваша идея сделать базовый класс ,но только при navigation нужно же передать action откуда и куда переходить. Если даже сделать такой базовый метод, то все равно нужно писать observableв кажлом фрагменте и вызывать там этот метод унаследованный от Basefragment. Я просто незнаком с темой и если по другому никак то я окей)))
А если сделать observer в базовом фрагменте?
У вас же точка КУДА всегда одинаковая
Указать в базовом фрагменте её и в подписке на LiveData просто вызывать эту функцию базового класса
источник

AM

Alexandr M in StartAndroid Ru Chat
Aleksei Afanasev
Короче, с моей точки зрения, это наоборот усложнит всё)
По сути, у тебя ответственность вью - обработка изображения
Тыкая на слои, ты делаешь запрос во вью модель, а она в свою очередь запрашивает интерактор, а уже там логика
Это мы не проходили. Пойду гуглить что такое интерактор
источник

АЧ

Анатолий Чепига... in StartAndroid Ru Chat
Aleksei Afanasev
А если сделать observer в базовом фрагменте?
У вас же точка КУДА всегда одинаковая
Указать в базовом фрагменте её и в подписке на LiveData просто вызывать эту функцию базового класса
То есть при navigationcontroller.navigate  можно указать лишь место назначения? Я этого не знал. Попробую
источник

AA

Aleksei Afanasev in StartAndroid Ru Chat
Alexandr M
Это мы не проходили. Пойду гуглить что такое интерактор
Это если делить код на слои, будет ui (всё представление), usecase (он же интерактор, бизнес логика) и data (тут работа с сетью, локальной бд и тд)
источник

AA

Aleksei Afanasev in StartAndroid Ru Chat
Анатолий Чепига
То есть при navigationcontroller.navigate  можно указать лишь место назначения? Я этого не знал. Попробую
Я точно не помню, но вроде указывается же id фрагмента в nav_graph, по моему можно указать его
источник

КП

Константин Просолупо... in StartAndroid Ru Chat
Vladushka
нужно выполнять запросы асинхронно и обрабатывать это
погугли, есть корутины, рх джава и еще куча устаревших вариантов
Пробовал рх, но он тоже ответа не дождался.
источник

V

Vladushka in StartAndroid Ru Chat
Константин Просолупов
Пробовал рх, но он тоже ответа не дождался.
значит не правильно пробовал )
источник

КП

Константин Просолупо... in StartAndroid Ru Chat
Vladushka
значит не правильно пробовал )
Согласен))
источник