Alexey
Alexey
Алексей
Sasha
1. введите критерий тонкости клиента
2. измерьте толщину клиента
3. мэтчинг
Konstantin
привет.
есть инфа как заставить на КСЯОМИ рабоать fingerprint api?
чек доступности сканера возвращает false
Andrey
все привет! есть ли способ перехватить нажатие на кнопку play в другом приложении? netflix, например. или youtube
Alexey
Himars
Alexey
Himars
Himars
Himars
Метка не передается в чистом виде если что
Mike
Himars
Алексей
иногда используется приём "неправильные часы - сам себе злобный буратино" :)
Alexey
да вроде как любых платформ) клиенту нельзя доверять
Алексей
Вот с ними тогда и поговорите на эту тему) Проверка подлинности - это из области шифрования и подписи запросов, скорее, а не из подсчёта времени.
Alexey
В таком случае наверное там защита от подделки запросов стоит. Тогда и парится не надо, бэк сам должен отстрелить неправильный timestamp
Andrey
а реально ли сделать что-то типа такого сервиса который сидит в фоне и слушает нетфликс (ютуб). при нажатии на плей берет стрим (либо ссылку) и передает его дальше?
Anton
Вот такая ошибка: All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 28.0.0, 27.1.1. Examples include com.android.support:animated-vector-drawable:28.0.0 and com.android.support:support-media-compat:27.1.1 less...
Насколько я понимаю это значит что какая-то из библиотек использует support library 27.1.1. Но как узнать какая ?
Alexey
Сергій
Anton
Сергій
просто подключи com.android.support:support-media-compat:28.0.0
Сергій
Himars
Anton
Anton
Kirill
Привет, есть такой экран:
scrollview, внутри него ViewPager, внутри него RecyclerView.
Пэйджеру задаю высоту recyclerView.
Проблема в том, что recyclerView думает, что он весь на экране и рисует все итемы
Kirill
Как можно обьяснить ему какая его часть видна, чтобы он отрисовывал только видимые
Akb
Можете скинуть ссылки на проекты Android MVVM с тестами, плез
Sasha
Господа и дамы,
Я запилил свою вью, наследующуюся от LinearLayout. При инициализации я вызываю View.inflate(context, R.layout.my_awesome_layout, this), и lint говорит, что здесь this утекает наружу. Я правильно понимаю, что в данной ситуации это неопасно? Можно ли как-то избежать этого ворнинга?
Mike
Sasha
да, в конструкторе
Sasha
спасибо)
Anonymous
Как добавить к RecyclerView Divider для 2 Типа. Так как у меня 2 типа Header и Element.
Kirill
rv.adapter.getItemViewType()
Kirill
как вариант
Anonymous
Kirill
ну да
Сергій
и там чекаешь тип и рисуешь под него дивайдер
Kirill
позицию в адаптере через recyclerview получаешь по вьюхе
Kirill
там методы есть
Kirill
я только хз насколько это норм с точки хрения производительности
Сергій
нормально
Kirill
отлично
Anonymous
У ItemDecoration нету такого способа получить holder, чтобы понять к какому типу он относится
Сергій
Anonymous
Сергій
там есть RecyclerView
Kirill
rv.adapter.getItemViewType()
Anonymous
getItemOffsets?
Anonymous
да он legacy
ᔕᗩᗰ
Всем привет! Подскажите пжлста по анимациям. Есть файл с простой анимацией translate (<translate android:duration="1000" android:toYDelta="-500" />), который поднимает кнопку на 300 вверх. Анимацию запускаю и она работает корректно (Animation moveUpFab = AnimationUtils.loadAnimation(getApplication(), R.anim.fab_moveUp); fab.startAnimation(moveUpFab);), но повторный клик работает только в той области, где она до этого находилась. Т.е. по сути кнопка меняет местоположение виртуально, но по факту остается по тем же координатам, что и до выполнения анимации. Если еще параллельно менять ее координаты программно, то она улетает в два раза выше, куда копать? Но если вызывать через fab.animate().setDuration(1000).alpha(0.0F).alphaBy(2.0f).yBy(-500).rotationBy(45.0f); то все работает корректно
Anonymous
чо по проще нету ничего?
Сергій
Kirill
Сергій
где уже всё написали
Kirill
у него берешь адаптер и спрашиваешь тип
Kirill
позицию спрашиваешь тоже у рекуклера
Anonymous
ясно
Сергій
https://proandroiddev.com/itemdecoration-in-android-e18a0692d848
Alexey
всем привет, подскажите, пожалуйста, способ решения проблемы.
Есть два фрагмента и ViewModel-и у каждого из них с LiveData-полями, эти LiveData-поля участвуют в формировании запроса к серверу (я их изменяю из вью).
При этом, если я перехожу от одного фрагмента ко второму и возвращаюсь обратно к первому, то состояние вью сбрасывается и мне его можно легко восстановить через observe LiveData-полей, но при этом у меня возникает круговая зависимость, когда я реагирую на изменения вью и отправляю изменения в LiveData-поле, но при этом, чтобы восстановить состояние вью, беря последнее значение из LiveData-поля, я делаю observe этих полей.
У меня получается круг: observe -> view changes -> observe etc.
Каким образом эффективнее всего от этого избавиться?
Простой пример: EditText/Spinner
Я хочу отобразить после возвращения на первый фрагмент сохраненный в LiveData текст через observe и вызываю метод setText у вью, это, в свою очередь, триггерит опять метод observe и так по кругу...
Anonymous
Андрей
всем привет, подскажите, пожалуйста, способ решения проблемы.
Есть два фрагмента и ViewModel-и у каждого из них с LiveData-полями, эти LiveData-поля участвуют в формировании запроса к серверу (я их изменяю из вью).
При этом, если я перехожу от одного фрагмента ко второму и возвращаюсь обратно к первому, то состояние вью сбрасывается и мне его можно легко восстановить через observe LiveData-полей, но при этом у меня возникает круговая зависимость, когда я реагирую на изменения вью и отправляю изменения в LiveData-поле, но при этом, чтобы восстановить состояние вью, беря последнее значение из LiveData-поля, я делаю observe этих полей.
У меня получается круг: observe -> view changes -> observe etc.
Каким образом эффективнее всего от этого избавиться?
Простой пример: EditText/Spinner
Я хочу отобразить после возвращения на первый фрагмент сохраненный в LiveData текст через observe и вызываю метод setText у вью, это, в свою очередь, триггерит опять метод observe и так по кругу...
я бы разделил это на 2 разных лайвдаты
Андрей
то есть
Андрей
когда жмешь на спиннер - изменяешь вью модель через SingleLiveEvent
Андрей
сохраняешь текущее состояние во вью модели