Sergey
Всем привет у меня есть recyclerview в нем есть item (layout) в которых есть imageview. Как можно скрывать и показать (Visibility) у всех itemов ?
Vyacheslav
Всем привет, может кто-то сталкивался в каких случаях может появляться ошибка "Набор Android App Bundle подписан с помощью неправильного ключа. " ? Забегая вперед скажу что приложение не публиковалось еще ниразу
Kozimjon
Народ, всем привет) нужна консультация - тут мне дали оптимизировать один опенсорс мессенджер. В адаптере сообщений он берет один лайоут, внутри которого есть все для отображения контента (для голосовых сообщений, фото/видео и прочее) - дальше походу дела в биндвьюхолдер он скрывает/показывает нужные вьюшки - насколько это правильно? и правильно ли это вообще? Лично я считаю, что необходим один пустой лайоут - дальше в биндвьюхолдер исходя из контента сообщения добавлять в лайоут нужные вьюшки - правилен ли такой подход? Заранее спасибо)
⁣
Всем привет у меня есть recyclerview в нем есть item (layout) в которых есть imageview. Как можно скрывать и показать (Visibility) у всех itemов ?
@dovzhenko_sergey, на вскидку, есть пару способов: можно собрать в адаптере RecyclerView все View в один список, который будет в поле класса, а потом проходить по списку и работать с ImageView. Ещё, наверное, можно использовать LiveData...
Kozimjon
это в биндвьюхолдер
это лайоут одного сообщения - куда добавлены все остальные вьюшки
⁣
@dovzhenko_sergey, я этот способ видел во многих туториалах, доступ к списку через объект адаптера. Если аккуратно реализовать, то можно, сам так делал много раз. Когда из Recycler-a удаляются элементы, из этого списка тоже удалять не забывать...
Ravshan
Всем привет! Есть инстаграм, очистил данные из приложения, автоматически аккаунт отсоединился, но уведомления приходят почему?
⬤ vitaly
почему на сраный самсунг 10 не приходят пуши, если процесс убит? Как пофиксить?
⁣
Уважаемые знатоки, кто-нибудь может подсказать, как в методе onCreate() (в главной активности) подгрузить layout-ы фрагментов, между которыми будут переходы? Дело в том, что я создал объекты фрагментов, у каждого фрагмента свой layout, в методе onCreateView() у каждого фрагмента через inflater как и положено грузится layout. Но при первом переходе, с одного фрагмента на другой, видно сильный лаг, который появляется из-за того, что второй фрагмент предварительно скрыт методом hide(). Если реализовывать фрагменты через RecyclerView, у которого есть свойство offscreenPageLimit, то лагов нет, потому что он заранее рендерит все нужные страницы. Но RecyclerView не вариант использовать, так как там нельзя сделать shared element, общий для двух фрагментов.
Vyacheslav
Всем привет! Есть инстаграм, очистил данные из приложения, автоматически аккаунт отсоединился, но уведомления приходят почему?
Возможно на сервере осталась подписка, возможно если ты зайдешь в свой акк и выйдешь из него средствами инстаграмма, пуши перестанут приходить, потом уж клирь данные
Maxim
Уважаемые знатоки, кто-нибудь может подсказать, как в методе onCreate() (в главной активности) подгрузить layout-ы фрагментов, между которыми будут переходы? Дело в том, что я создал объекты фрагментов, у каждого фрагмента свой layout, в методе onCreateView() у каждого фрагмента через inflater как и положено грузится layout. Но при первом переходе, с одного фрагмента на другой, видно сильный лаг, который появляется из-за того, что второй фрагмент предварительно скрыт методом hide(). Если реализовывать фрагменты через RecyclerView, у которого есть свойство offscreenPageLimit, то лагов нет, потому что он заранее рендерит все нужные страницы. Но RecyclerView не вариант использовать, так как там нельзя сделать shared element, общий для двух фрагментов.
Ты используешь фрагмент менеджер для установки фрагмента? Или руками менеджмент осуществляешь, устанавливая визибилити?)
Maxim
Тогда почему у тебя фрагмент изначально скрыт?
Maxim
второй фрагмент*
Anonymous
использую Firebase phone auth, написано что SMS для подтверждения номера телефона Включите одноразовые SMS-коды доступа для входа в ваше приложение. Сообщение %LOGIN_CODE% is your verification code for %APP_NAME%. ----------------------- но у меня на одном телефоне сообщение кода приходить не коректно, кто нибудь знает почему такое возможно ?
⁣
Тогда почему у тебя фрагмент изначально скрыт?
Я его скрываю, потому что на каждом фрагменте у меня полноразмерный экран, с прозрачным фоном. Если видны сразу два фрагмента, один просвечивается через другого.
⁣
@CakeWalker, я просто хочу реализовать программное переключение экранов (без слайдинга), без создания новых активностей, при этом, чтобы не было лагов. Лаг появляется из-за того, что изначально рендерится один экран, а остальные видимо начинают рендериться лениво, при первом переключении. Пробовал ViewFlipper, там такая же история.
Maxim
Странный метод реализации менеджмента фрагментов\
Maxim
Под слайдингом ты имеешь ввиду стандартный переход к новому фрагменту?
Maxim
Или вьюпейджер типа?
Flogiston
Писать CursorAdapter для RecyclerView - норм идея?
⁣
@CakeWalker, я имел ввиду слайдинг - который у ViewPager-a, по тачу.
⁣
@CakeWalker, просто нужно программно переключать экраны, без создания активностей...
Maxim
@CakeWalker, я имел ввиду слайдинг - который у ViewPager-a, по тачу.
Так а почему бы не пользоваться реплейсом фрагмент менеджера без анимации?)
leksss
Подскажите. Хочу запустить прилку на 17 апи, исспользую animation Drawable, Он получается ей не поддерживается? StateListDrawable cannot be cast to android.graphics.drawable.AnimationDrawable
⁣
@CakeWalker, я с самого начала так пробовал. Я тестирую на хороших телефонах, но при реплейсе тоже возникают лаги, причём каждый раз, так как там заново происходит inflate.
Ivan
@CakeWalker, я с самого начала так пробовал. Я тестирую на хороших телефонах, но при реплейсе тоже возникают лаги, причём каждый раз, так как там заново происходит inflate.
Скорее всего дело в процессе инициализации экрана. Может в БД ходишь на главном потоке или переусложнил разметку. Реплейс даже на среднебюджетных девайсах не лагает
Maxim
+
Maxim
Хотя нынче вроде блочатся операции с БД в главном потоке, если я не ошибаюсь
Maxim
Но тут явно что-то не так с реализацией твоих фрагментов
⁣
Огромное спасибо за ответы! Да, действительно, у меня при переключении сверху работает MotionLayout, я могу скинуть видео.
⁣
БД в главном точно нету)
⁣
Maxim
Ну вроде не лагает
Ivan
Я правильно понял, что речь о лаге, когда на профиль в первый раз переключаешься?
⁣
@CakeWalker, при первом переключении на профиль видно) @hardcore880, да.
Maxim
А, понял
Ivan
@CakeWalker, при первом переключении на профиль видно) @hardcore880, да.
Ну тут видно, что именно на этапе инициализации view. Ты эти искры делал через motion layout?
⁣
@hardcore880 , искры через Lottie, там анимированные вектора под капотом
Konstantin
почему на сраный самсунг 10 не приходят пуши, если процесс убит? Как пофиксить?
штаааа, приходят пуши потому что их получает система а не твое приложение
⁣
@hardcore880, на самом деле, я в профиль вставлял разные разметки, но лаг всё равно есть
Ivan
@hardcore880 , искры через Lottie, там анимированные вектора под капотом
Вот lottie как раз довольно тяжел. Не пробовал animated vector drawable?
⬤ vitaly
штаааа, приходят пуши потому что их получает система а не твое приложение
ну блин, очевидно, я имел в виду, что мой процесс не просыпается и ресивер не срабатывает
⬤ vitaly
а должен?
ну какбы да 🤷‍♂️
Konstantin
может когда приложение запущено и где то тусуется в фоне - должен
⁣
Вот lottie как раз довольно тяжел. Не пробовал animated vector drawable?
Я туда вставлял даже тот же самый фрагмент, что и был до этого, всё равно лагает)
⬤ vitaly
может когда приложение запущено и где то тусуется в фоне - должен
камон, на всех других девайсах нормально пуши работают и поднимают прилагу даже из глубин преисподней (и всегда поднимали). Не знаю, откуда у тебя инфа, что не должен.
Ivan
Я туда вставлял даже тот же самый фрагмент, что и был до этого, всё равно лагает)
Как это могло помочь) Я не знаю, что у тебя в этом фрагменте под капотом, могу только сказать, что onCreateView/onViewCreated/onActivityCreated отрабатывает долго и наверняка из-за анимации. Если это lottie- можно поискать способы ленивого запуска, может получиться загрузить анимацию на IO, а потом запустить
mike
А можно ли как-то узнать анимируется ли в данный момент вьюха? Гугл не дал результатов
⁣
@hardcore880, в том-то и странность, что я делал эти переходы через ViewPager с этими же фрагментами. Установил там offscreenPageLimit и у меня всё супер-плавно работало, на трёх телефонах)
⁣
@hardcore880, просто не хочется через ViewPager делать, так как пользователю здесь не нужно экраны листать, для этого нужно переопределять onTouchEvent
Ivan
камон, на всех других девайсах нормально пуши работают и поднимают прилагу даже из глубин преисподней (и всегда поднимали). Не знаю, откуда у тебя инфа, что не должен.
1. Если процесс убит- то пуши ему никогда не придут. Это в доках даже есть. Убить процесс можно через настройки или рутом. В остальном- гибернация. 2. У вендоров разные политики энергопотребеления. Имеет смысл проверить, включены ли на телефоне режимы экономии энергии (в тч вендорские) и не беспокоить, а так же проверить, не указаны ли твое приложение и сервисы гугла в списках экономии энергии
Anonymous
Всем привет. Кто может модифицировать андроид программу? Нужно встроить туда шифрование данных, которые хранит мессенджер Conversations на устройстве
⁣
Конечно, ведь у тебя на старте все фрагменты загрузились. Там и был лаг, но ты его не заметил.
Спасибо за большое ответ) А если делать отдельные экраны через новые активности, это плохо?
Ivan
Спасибо за большое ответ) А если делать отдельные экраны через новые активности, это плохо?
Ну через отдельные активности как на видео не получится. Ну или будет крайне геморно. Я тебе рекомендую всё-же провести профилирование старта твоего фрагмента, выяснить что именно там дольше всего отрабатывает и поискать как оптимизировать или инициализировать лениво
⁣
@hardcore880, спасибо!
⬤ vitaly
1. Если процесс убит- то пуши ему никогда не придут. Это в доках даже есть. Убить процесс можно через настройки или рутом. В остальном- гибернация. 2. У вендоров разные политики энергопотребеления. Имеет смысл проверить, включены ли на телефоне режимы экономии энергии (в тч вендорские) и не беспокоить, а так же проверить, не указаны ли твое приложение и сервисы гугла в списках экономии энергии
в моём случае речь не идёт о форс стопе. Когда юзер высвайпывает приложение из трея - оно помирает в том смысле, что процесс приложения останавливается и убирается из памяти, вот эту остановку я имел в виду. И при этой остановке пуши ДОЛЖНЫ доходить, а они не доходят, в этом проблема на чёртовом десятом самсунге. Из-за энергосбережения-ли или ещё из-за чего-то, но вот так...
Turalllb
Подскажите как я могу в recyclerview узнать, когда внутри появлися хоть какой то item. А то при старте приложения recycler от родителя принимает фокус, а пытаюсь передать нулевому айтему, а его еще нет
Turalllb
окей, думал может уже есть какой то слушатель
Dmitry
в моём случае речь не идёт о форс стопе. Когда юзер высвайпывает приложение из трея - оно помирает в том смысле, что процесс приложения останавливается и убирается из памяти, вот эту остановку я имел в виду. И при этой остановке пуши ДОЛЖНЫ доходить, а они не доходят, в этом проблема на чёртовом десятом самсунге. Из-за энергосбережения-ли или ещё из-за чего-то, но вот так...
там еще зависит от самого пуша, который ты принимаешь. Если в пуше есть поле data, то всегда будет пуш обрабатывать твой обработчик в приложении, если в data ничего не положить, то при свернутом приложении будет обрабатывать системный обработчик пушей
Dmitry
может быть причина в этом
Тони
("yyyy-MM-dd'T'HH:mm:ss.SSSSSSZ").parse("2020-02-18T13:13:55.865521Z") в чем ошибся в формате?) Подскажите плиз,а то что-то глаз замылился))
Тони
Z помоему с 'Z'
спасибо большое. Во многих источниках почему-то пропускают 'Z'.
Anton
спасибо большое. Во многих источниках почему-то пропускают 'Z'.
Z без апострофа указывает на тайм зону по RFC 822
V.Ilin
такой вопрос, если у меня есть файл, в папку Raw, мне его нужно изменить и переписать, как это лучше реализовать? (при том что записывать файлы в Raw нельзя)
Taras
ты о чём?