Aleksey
Раз 10 свернул и развернул
так это ты неправильно обрабатываешь инсеты и каждый раз прибавляешь новые
https://medium.com/androiddevelopers/8f9ccc8fa4d1
Anonymous
Aleksey
Anonymous
Vladimir
Кстати по инсетам. Если не ставить флаги в коде и не задавать в теме translucent, то инсеты не передаются?
Kopusha
Aleksey
ого, кто-то вообе знал, что в Gradle можно объяснять, почему ты зависимость тянешь?
https://blog.blundellapps.co.uk/tame-your-gradle-dependencies-just-because/
Andrey
а есть способы обойти баг с ActivityCompat.shouldShowRequestPermissionRationale без заведения служебного поля, в которое писать факт первого запроса?
Aleksey
Andrey
в самый первый раз возвращает ложЪ хотя диалог отлично открывает.
Andrey
мне надо прочекать куда посылать юзера - в диалог пермишенов или в настройки приложения, если он ответил ду нот аск эгейн
Andrey
нет, если возвращает фолс, то мне надо жестко слать в настройки, а если тру, то значит он может показать мягкий диалог и показать его. но он врет (
Andrey
Это же не флаг наличия пермишенов, а флаг необходимости открытия мягкого диалога для их установки
Artur
Наоборот
Это флаг когда юзер уже 1 раз отказал
У меня всё норм работает с ним
Artur
То есть, если он отказал, то ты должен ему дополнительно подробно объяснить
Aleksey
Andrey
Ок. Допустим я проверил что пермишен денаед. Дальше мне надо заставить юзера его выставить. И по этому методу я как раз и хотел проверить как мне это сделать - мягко или жестко открыть активити настроек
Andrey
могу кот показать
Aleksey
в самый первый раз возвращает ложЪ хотя диалог отлично открывает.
но это не баг, а верное поведение.
первый запрос - не нужно ничего объяснять, просто просишь разрешение
если были отказы, но без галочки - объясняешь
> returns true if the user has previously denied the request, and returns false if a user has denied a permission and selected the Don't ask again option in the permission request dialog, or if a device policy prohibits the permission.
Artur
+ вот
Aleksey
Andrey
я читал ответы на стековерфлоу, что это верное поведение. Тогда я хочу другой метод, с другим поведением ) Первый то раз он пишет денаед + фолс! Хотя первый раз юзер не выставил галочку и можно показать диалог.
Andrey
Или я туплю
Mike
Aleksey
Или я туплю
нет, вроде не тупишь. а для чего ты пытаешься такое нагородить?
хочешь при первом запуске показать объяснялку?
Andrey
Сейчас у меня все работает. Но я хотел улучшить ) Сейчас так - если пермишена нет, то я запрашиваю мягко, в коллбэке анализирую этот флаг и решаю как запрашивать следующий раз - мягко или жестко. поэтому первый раз запрос идет без анализа этого флага всегда через диалог. Я хотел уйти от коллбэков вообще - посмотрел, что у меня онРезюм вызывается на каждый чих, и думал - засуну запрос пермишенов туда безо всяких коллбэков (!) и оно само будет мне циклить если юзер денаит )
Andrey
А сейчас цикл организован через вызов той же функции проверки-запроса пермишена в коллбэке его ответа
Aleksey
Andrey
ну так да, работает ) я хотел проверять этот флаг вообще перед самим запросом
Andrey
и не нужен был бы onRequestPermissionResult
Andrey
и судя по тому, что я гуглил, немало народу сталкивается с этим вопросом
Aleksey
Andrey
работал бы этот метод сразу правильно при первом запросе, проблем бы не было )
Aleksey
Andrey
Из его названия следует семантика - показывать ли диалог установки пермишена. Если юзер выставил галочку что нет - то не показывать. А если юзер вообще не видел в глаза этот диалог еще, то что должден возвращать метод? По-моему ответ очевиден
Andrey
А так получается что мы всегда не чекая флаг вызываем диалог, и только в его коллбэке чекаем этот флаг для дальнейших действий
Aleksey
Andrey
то есть я не могу сразу понять, что диалог разрешения мне не покажут, и сразу не пытаясь его показать послать в настройки?
Aleksey
Andrey
вот поэтому и грусть...
Andrey
нет, народ выходит из положения - заводит служебное поле, в котором хранит флаг - был ли первый запрос пермишена или нет. но это же костыли дикие
Aleksey
Andrey
насчет флудить - я не большой андроид-разработчик, по любому вопросу гуглю. но с андроидом такая беда, что нагуглить можно кучу депрекейтеда и в конце выясняется, что сейчас эта проблема давно решена, и бест-практисы такие-то. вот и спрашиваю в чатике каждый раз. так что сорри
Anonymous
Добрый вечер, у меня появилась непонятная проблема, которую то ли невозможно нагуглить, потому что таким никто не занимается, то ли я не осилил. Суть в том, что я интегрирую плей сервисы в приложение. Чтобы их интегрировать - нужно привязать девелоперс апи к плей консоли. Я привязал проект, а оказалось, что у меня уже есть привязанный проект, который я сейчас использую в продакшене (в.т.ч. файрбейс). Я могу в плей консоли отвязать Google Play Android Developer, но свой проект я привязать не могу, он не появляется. Соответственно отправить на проверку проект, чтобы одобрили плей сервисы я не могу, т.к. этот проект не привязан к плей консоли (но при том как-то привязан, я уже не выкупаю). Что делать?
Artur
Хотя не знаю зачем я это пишу, вроде уже объяснил Алексей даже лучше
Andrey
То что вы пишете это важно, потому что это традиции и бестпрактисы. Но я возможно придумал вариант как обойтись без коллбэка. Сейчас протестирую и если все ок и вам будет интересно, то расскажу )
Andrey
Нет, какртинка не ожила - хотел в onCreate делать первый запрос а в onResume анализировать флаг и делать последующие без коллбэка. Но тут асинхронщина, и onResume не ждет ) Так что будем жить как все, с коллбэками
Владимир
Коллеги, нужен совет.
Если у вас на проекте что-то вроде mvi/flux/redux/elm, то расскажите как вы реализовали открытие нового экрана и отображение всяких snackbar'ов?
Наталья
Ребят, всем привет) никто не знает как в Jsoup эту херню распарсить? Интересует вариант класса с аннатациями @Selector
Leonid
всем привет, такой вопрос я хочу вынести все запросы из активити в отдельные классы, чтобы запрос работал в обычном классе нужно его унаследовать от LoaderManager я правильно понимаю?
--------
--------
Leonid
www.google.com, ты даже не пытался же
разбирался с архитектурой которую рекомендует использовать гугл, прочитал про viewmodel, live data, room, репозиторий, но так и не понял как их вместе использовать, пишу на java нормального руководства так и не нашел. поэтому решил для начала вынести запросы в другой класс
awawa
Как бороться с небольшим лагом при первом скроле ресайклера? Киньте ссылкой, если у кого есть примеры бест практисов. Пока нашел только наследование от LinearLayoutManager'а и переопределение getExtraLayoutSpace.
Artur
Arsen
svergoon
всем привет, кто-то работал с клоакой?
Александр
*вангую возникновение троллинга*
Arsen
только хотел пошутить(
Alexander
Сергей
Господа гусары, молчим, не поддаемся на провокацию!
Arsen
Сергей
А вообще вопрос интересный, что имелось в виду? А то может я с ней работал?
Alex Android
Хммм, а сайт может зарегать себя в системе, как получатель контента?
Типа пошарить картинку в ВК, но без установленного приложения
Alexander
Сергей
А, cloak
leksss
Подскажите, как добиться такого градиента для анимации с такими границами?
leksss
⬤ vitaly
Лёгких вёсел и бриза в харю. Ну чё тут у вас за выходные интересного было? Кроме because в грэдле, это я уже прочитал)
Alex Android
⬤ vitaly
Что за Because?
https://blog.blundellapps.co.uk/tame-your-gradle-dependencies-just-because/