⬤ vitaly
А если сайт не мой?
ну ты можешь написать код, который прочитает значение переменной и тебе его вернёт в твою прилагу, даже если сайт не твой.
Vadim
не подскажете почему у меня требует nullable FragmentManager? val fragmentAdapter = MyPagerAdapter(fragmentManager)
Михаил
привет. есть 2 класса channel и channelDTO по сути с одинаковыми полями. Нужно данные перенести с одного в другой, а это портянка get и set методов. Может есть плагин, который генерирует код?
Михаил
нет, это cleanArch. нужен именно генератор кода
Михаил
Делегаты?
просто нужно что-то генерирующее: public static ChannelDTO transform (Channel channel){ ChannelDTO channelDTO = null; if (channel != null){ channelDTO = new ChannelDTO(); channelDTO.setUrl(channel.getUrl()); channelDTO.setCategoryId(channel.getCategory()); channelDTO.setCacheImage(channel.getCacheImage()); channelDTO.setDownloadFull(channel.getDownloadFull()); } return channelDTO; }
⬤ vitaly
подскажите какие-нибудь либы для вкручивания двухфакторной аутентификации, типа кастом пин, паттерн и всё такое
⬤ vitaly
гугол ничего нормального не даёт
Max
чем Path отличается от обычной строки?
нужно распарсить список строк, почему именно этот символ не даёт распарсить?
Nazar
Ребят, правильно я понимаю, постоянно проверять геолокацию можно только если приложения активно и находится на экране?
Aleksey
нет, это cleanArch. нужен именно генератор кода
боже, как же плохо это звучит)
Михаил
боже, как же плохо это звучит)
обычный маппер сущности из одного слоя в другой
Aleksey
нужно распарсить список строк, почему именно этот символ не даёт распарсить?
так ты json не верно формируешь - там как минимум нужны кавычки
Aleksey
обычный маппер сущности из одного слоя в другой
можешь MapStruct/AutoValue попробовать, но это прям плохо
Max
так ты json не верно формируешь - там как минимум нужны кавычки
у меня допустим Uri в этой строке, вручную кавычки там ставить?
Михаил
можешь MapStruct/AutoValue попробовать, но это прям плохо
но задача-то по сути типовая и тривиальная, просто руками не удобно вызывать get и set для каждого поля.
Aleksey
у меня допустим Uri в этой строке, вручную кавычки там ставить?
попробуй такую строку в json конвертнуть “[\“/\“, \“/\“]”
Aleksey
а можно просто не плодить классы на каждый типаслой
Max
а можно просто не плодить классы на каждый типаслой
а я и не пложу, и слоёв нет, у меня ж не клин)
Aleksey
а если чисто строку?) я там кавычки эскейпил, а не слэши
Max
а если чисто строку?) я там кавычки эскейпил, а не слэши
в том и дело, Uri строкой легко парсится, а если его строкой в листе - то всё ггвп
Anonymous
Приветики Кто знает хорошие статьи и книги в контексте ИБ android на уровне приложений, реверса и т.д. языки: рус, анг 🙋
Vadim
Кто то сталкивался с проблемой отображения TabLayout'a в CoordinatorLayout ?
Viktor
Добрый день, хочу сделать уведомления у приложения.. собственно нужно ежедневно делать запрос к серверу в 12 часов ночи(или когда на телефоне будет доступ к сети) и подгружать от туда данные (в данных есть время) собственно по этому времени и в течении дня выкидывать уведомления пользователю... Не очень понимаю как такое сделать.. Есть ли какие-либо гайды? Я понял что подкобчение к сети можно определить через Broadcast Receiver, а уведомление само создать по времени в workManager.. Но где лучше сдлеать запрос к серверу? и как запускать чтобы в 12 часов шёл запрос к серверу (тоже через workManager?)?
Max
Можно не руками - есть паттерн билдер, например 🙂
нашёл проблему, дело не в кавычках, а в том, что перед сериализацией не нужно список переводить в строку
Михаил
Добрый день, хочу сделать уведомления у приложения.. собственно нужно ежедневно делать запрос к серверу в 12 часов ночи(или когда на телефоне будет доступ к сети) и подгружать от туда данные (в данных есть время) собственно по этому времени и в течении дня выкидывать уведомления пользователю... Не очень понимаю как такое сделать.. Есть ли какие-либо гайды? Я понял что подкобчение к сети можно определить через Broadcast Receiver, а уведомление само создать по времени в workManager.. Но где лучше сдлеать запрос к серверу? и как запускать чтобы в 12 часов шёл запрос к серверу (тоже через workManager?)?
Можно использовать AlarmManager. AlarmManager запускает receiver'ы. Можно установить AlarmManager на нужное время (в данном случае 12 часов ночи), чтобы он запустил Receiver, который, в свою очередь проверит соединение с интернетом. Если есть интернет, то скачать данные, иначе установить AlarmManager на, допустим, час позже. Если данные с временем скачались, то установить AlarmManager's вызывающий уже другой Receiver, который будет запускать уведомление в то время, которое скачалось.
Михаил
Огромное спасибо! А сервис стоит делать для получения данных? В документации у аларма написано якобы "он не всегда вам подойдёт"... (Аларм не подойдут для получени данных имеется ввиду)
Хм... Не знаю на счёт сервиса. У меня есть receiver, который показывает уведомления. То есть там тоже есть некоторый код, и он без проблем полностью выполняет свою функцию.
⬤ vitaly
Ладно, ещё раз спасибо!
только учти, что эта фигня будет работать через раз. Как и всё в андройде.
⬤ vitaly
Почему?
это не ко мне вопрос) Просто не работает время от времени)
Viktor
Мне важно именно чтоб уведомление досталялолсь 100% Приложение медицинское и это очень важный критерий
Viktor
Как-то можно это побороть?
Viktor
Просто я смотрю на workmanager и думаю, что можно ли сделать все на нем? И есть ли у кого-то опыт? Я просто в него ещё не вникал...
Anonymous
Добрый вечер нужна ссылка на группу телеграм 'хакер андроид' или можно задать вопрос в группу
Vadim
Есть фрагмент с TabLayout в котором есть другой фрагмент содержащий RecyclerView если я добавляю эелемент, то элемент добавляется всё чётко если перехожу в какой то из элементов и потом нажимаю назад то список моих элементов в TabLayout пустой
Vadim
мне надо как то сохранять состояние?
Vadim
ᛖᚹᛋᛁᚱ
А откуда данные в ресайкл берутся?
Anonymous
ребят
ᛖᚹᛋᛁᚱ
Сначала отладь и посмотри когда getItemCount == 0
Anonymous
какие методы вызываются когда daynight меняет тему
Anonymous
ну когда переключатель темный темы включаешь
Anonymous
как выглядит lifecycle
ᛖᚹᛋᛁᚱ
как выглядит lifecycle
https://developer.android.com/guide/topics/ui/look-and-feel/darktheme
Vadim
А ты viewModel/presenter используешь или просто данные сетишь при открытии фрагмента?
фетчу данные из базы и дело в том что до добалвения таббара сейчас всё работало корректно
Anonymous
onConfigurationChanged вызывается
ᛖᚹᛋᛁᚱ
фетчу данные из базы и дело в том что до добалвения таббара сейчас всё работало корректно
Ну вот, проблема может быть как в виев пейджер, так и в ресайлере
Vadim
Ну вот, проблема может быть как в виев пейджер, так и в ресайлере
ну говорю же когда был просто ресайклер всё работало гуд) щас добавил viewPager и куда копать не оч смекаю
ᛖᚹᛋᛁᚱ
Если да, то где ты загружаешь данные в onCreate или onViewCreated
ᛖᚹᛋᛁᚱ
Или вообще какой-то shared viewmodel
ᛖᚹᛋᛁᚱ
не, нету его при возврате назад
Поздравляю, ты нашел ошибку, теперь ищи куда он пропадает
ᛖᚹᛋᛁᚱ
Думаю проблема в адаптере ViewPager
Vadim
да, я тоже так думаю у меня адаптер рисует только в методе onViewCreated
Vadim
Думаю проблема в адаптере ViewPager
ну или хз https://gist.github.com/mnewlive/ff280eb546cddf3e5b5adc2c7e3d7289
Vadim
Это код фрагмента
обновил, я думал всё таки проблема во фрагменте https://gist.github.com/mnewlive/ff280eb546cddf3e5b5adc2c7e3d7289
ᛖᚹᛋᛁᚱ
В коде нет ничего удивительного
Vadim
Верней содержимое их
Vadim
В видосике выше отображается хорошо
ᛖᚹᛋᛁᚱ
Значит фрагменты есть, следовательно и ресайкл должен быть
Vadim
Значит фрагменты есть, следовательно и ресайкл должен быть
У меня есть фрагмент с табами, в одном из табов фрагмент с целями вот его так раз таки нет когда нажимаю бэк И тем тулом проверил что первоначально есть ресайклер а при нажатии на бэк его нет
ᛖᚹᛋᛁᚱ
Ну судя по адаптеру у тебя 2 одинаковых фрагмента