Юрий
У вас есть класс Repository? Если все идёт через него, то вам получается нужно изменить только его
Turalllb
Если вы пошли путем в архитектуре паттернов к примеру mvp и если слабая связность идёт , плюс разбито все на слои, то тогда изменение будут минимальны
ну у меня так то чистенько всё, mvp DI репозитории.. но не вижу смысла просто, чем круче например room, если мне нужно сделать сотню однообразных запрсов
Turalllb
В цикле? Зачем? Если можно сразу одним запросом список данных получить?
тупанул я, теперь вижу что один запрос можно делать
Max
Гайз, аркор чат?
Turalllb
ладно, спасибо, сам бы я наверно долго не замечал ошибки . Пойду дописывать, а потом уже другие технологии смотреть
Max
Да
Anton
Добрый вечер. Подскажиет, пожалуйста. Я прослушиваю события PHONE_STATE в broadcastReceiver и получаю три различных события (IDLE - вызов завершен, OFFHOOK - соединение с другим абонентом установлено, и RINGING - когда мне звонят), как из этих событий или с помощью чего, я смогу определить, сбросили ли мой вызов или я сам его сбросил (это понятно, что сперва идет OFFHOOK, а после IDLE, когда уже вызов завершается). Мне нужно определить, взяли ли трубку или ее абонент сбросил, это возможно ли?
Turalllb
Меня если честно начало сомнения брать насчёт правильного DI)
да всё четко, по даггеру я много статей читал) с квалификаторами, скоупами и зависимостями разобался) и с сабкомпонентами, но что-то не особо пока они нужны бывают, зависимостями справляюсь.
Юрий
App extends DaggerApplication ? Activity extends DaggerAppCompatActivity ? Fragment extends DaggerAppCompatFragments ?
Юрий
да всё четко, по даггеру я много статей читал) с квалификаторами, скоупами и зависимостями разобался) и с сабкомпонентами, но что-то не особо пока они нужны бывают, зависимостями справляюсь.
Вчем фишка, в том что ну очень мало примеров в сети использования нового daggera в основном реализации старого, там где нужно самому контроль жизненный цикл
Turalllb
От какого класса ты наследуешься в App классе? От какого класса ты наследуешься в Активности и Фрагментах?
ни от кого)) В наследнике app в onCreate только компонент создается и передается в него appModule , дальше например в активности, компонент зависит от компонента app , который передает ему контекст и еще кое что и т.д.
Turalllb
но то что я хочу чтобы жило чуть дольше находится в вышестоящем компоненте и от него наследуюсь
Turalllb
Ты используешь эти эти супер классы?
нет..слушай зачем расстраиваешь)) я же кучу статей этих перечитал и нигде не видел этих суперклассов
Юрий
нет..слушай зачем расстраиваешь)) я же кучу статей этих перечитал и нигде не видел этих суперклассов
А нигде этого и не пишут, а потом люди удивляются когда у них утечки памяти
Юрий
Я в даггере уже второй год работаю, и поверь собаку в нем съел)
Turalllb
А нигде этого и не пишут, а потом люди удивляются когда у них утечки памяти
да неет , ну если нормальную иерархию наследования от вышестоящим компонент построить то откуда утечки то .. Может из-за ошибок, которые возникают вследствие запутанной схемы.
Turalllb
а есть статья какая нибудь или проект с таким подходом ?
Юрий
нет..слушай зачем расстраиваешь)) я же кучу статей этих перечитал и нигде не видел этих суперклассов
Ради прикола открой свой профайл и глянь чё творится когда будешь ходить вперёд и назад по бестеку)
Turalllb
сейчас гляну
Юрий
сейчас гляну
Самое наглядное запустить на слабом телефоне, он быстрей упадет если есть утечка
Юрий
сейчас гляну
Ссылки обнуляешь в презентаре при переходе на другой фрагмент или активность?
Юрий
сейчас гляну
Ещё один не приятный момент без тех супер классов что я описал выше Даггер ничего не знает о жизненных циклах компонентов, тот Даггер был написан не под андройд а под чистую джаву
Юрий
А вот те супер классы знают про жизненный цикл
Юрий
И кода меньше в разы
Юрий
Если интересно напомни завтра буду за компом накидаю примеров
Turalllb
Хорошо, завтра обязательно напишу) Спасибо
Turalllb
Ссылки обнуляешь в презентаре при переходе на другой фрагмент или активность?
Не совсем понимаю какие ссылки. Например, инжектировал я репозиторий в презентер, так же сделал запрос и получил данные какие то которые нужно в презентере держать. Перехожу на новую активность. Зачем мне занулять ссылки на репозиторий или данные очищать , это же не дестрой текущей активности. А вот уже активность дестроится, очищается единственная ссылка на компонент даггера и все чистится
Serhii
https://pastebin.com/f1qfWy8a Создаю простой пример интент сервиса. лог START - пауза 5 сек - лог END по идее же он должен выносить работу в отдельный поток т.е должен вывести два лога, независимо от того жива активити или нет. Но если убиваю активити раньше 5 сек то лог END не выводится. Я чет не так понимаю?
Юрий
Его нужно на дестрое занулять
Юрий
В профайле если увидишь после переходов кучу презенторов и активностей это первый звонок
Юрий
Ааа))) ну с moxy тогда вообще хз как он себя ведёт, я такое не юзаю
Turalllb
В профайле если увидишь после переходов кучу презенторов и активностей это первый звонок
Ну я сейчас перепишу к бд запросы и протестирую в профайлере. Мне сейчас надо список integer в массив строк аккуратно перевести )
Сергей
мать, мать, мать мать! Какая же глючная система у андроида в части установления dencity при закачке картинок из ресурсов и файлов. С неделю потратил на красноглазый дебаг в танцах с бубном вокруг того, что картинка (внезапно для всех) может загрузиться с размерностью в 1,5 или 2 раза больше чем она есть в ресурсах или на диске. Причем какой из методов грузит один к одному, а какой с плотностью аппарата - не узнаешь, пока не обложишь подозрительный метод ассертами, логами и прочим
Сергей
кто полезет с битмапами возиться - имейте в виду
Юрий
кто полезет с битмапами возиться - имейте в виду
Попробуй рейдиринг через webview и перевод это в битмап, счастья просто ппц)
Turalllb
Мокси удобная штука, за жизненным циклом следит, презентер не умирает при поворотах , плюс если в данный момент крутился прогресс бар, то при повороте экрана он продолжит крутиться. Там команды на новую вью нанизываются. Я думаю эта либа и профи работу облегчает
Turalllb
Да да) знаю, но не юзал , уже не нужно даже) и не уверен решит ли он вопрос с тем что крутился прогресс бар перед поворотом экрана. Надо ставить флаг, проверять..
Yakov
Вопрос когда уже moxy запилить поддержку Androidx, я делаю делаю хак с подменой, но это же костыль. Кто в курсе когда будет модуль с androidx?
Сергей
Не, эту непредсказуемую плотность экрана победить невозможно. Сдаюсь. На будущее - никакой загрузки ничего изменяемого из ресурсов. Лучше в sql в блоб все одноообразно перегнать, потом предсказуемо загрузить
Yakov
https://t.me/moxy_ru
Спасибо
Сергей
вообще со всем. если в приложении пытаться одновременно работать с битмапами, загруженными из граф.файлов, из ресурсов, восстановленных или обработанных как массивы - их внутренняя "плотность" скачет от 320 до 1
Сергей
или не отображаются, или масштабируются в 320 раз
Сергей
предсказать какой из десятка методов, которым обрабатываются/загружаются картинки эту плотность сохранит, или поменяет или возмет из опций - невозможно, в доках ничего нет
Anonymous
Как вывести в JUnit log вместо System.out?
Alexey
Как вывести в JUnit log вместо System.out?
Разве system out не работает?
Anonymous
Я к тому чтобы не писать в тестах лишнего. Заюзал метод, проверил в презентере что да как и дальш
Alexey
Ну хз, я 2 раза прочитал и ничего не понял что ты написал
Anonymous
В тестах не отображается инфа в логах, когда используешь класс Log
Anonymous
Там работает System
Anonymous
Как сделать чтобы в тестах Log работал
Alexey
Там работает System
А понял, я везде тимбер юзаю, там ему устанавливаешь любой делегат и он через него логи пишет
Alexey
Вот в setUp установи делегат с выводом в system.out
Anonymous
это либа?
Anonymous
https://github.com/LachlanMcKee/timber-junit-rule оно?
Alexey
Я руками делал, но это вроде то что надо)
Yergali
Приветствую всех) как технология называется который использует google street view?
Andrew
Доброе утро! Как получить все навешанные обработчики событий на Button?
Iuriich
Есть горизонтальный drawerlayout, в нем вертикальный recyclerview. Когда проматываю список если горизонтально сдвинусь то drawerlayout как корневой элемент перехватывает движение. Как сделать чтобы drawerlayout при перехвате свайпа не съедал его, а передавал также и на вложенные элементы?
Андрей
это шедевр
Андрей
а вообще ошибка в том, что ты походу переименовал MainActivity
Андрей
но intent-filter для него остался в манифесте
Юрий
покажи свой манифест