Все записи категории ‘На первой полосе’

Добавляем в page cache зависимость от значения cookie
 4 Мар, 2025

Модуль page_cache использует http_middleware, чтобы зацепиться за объект request и произвести кеширование страницы. Работает он для анонимных пользователей. Хотелось бы расширить его возможности и получить больше управления над кешированием.

Рассмотрим как переопределить зацепку page_cache, и изменить идентификатор cache_id (cid), который генерируется для страниц. Мы добавим зависимость от названия города, которое пользователь передаёт как cookie с именем city.

Читать далее »
Notification в Android
 1 Мар, 2025

Как показать уведомление в android?

Мало того, что сообщения имеют довольно сложную структуру, но они еще и зависят от версии API, под которое билдится приложение.

Читать далее »
Rutube: интегрируем как ombed provider source в Drupal
 28 Фев, 2025

Задача — добавить rutube как embed провайдера в медиа библиотеку, чтобы можно было создать медиа тип Rutube, где будет поле для ввода ссылки. Медиа поля после этого позволят добавлять еще один тип медиа содержимого — Rutube Video.

Читать далее »
Выбор версии php по-умолчанию
 27 Фев, 2025

Когда на unix сервере используется несколько версий php, то может возникнуть задача включить определенную версию для использования по-умолчанию. Чтобы, к примеру, composer при проверке требований версии php, остался доволен.

Читать далее »
Синглтон и даблчек
 25 Фев, 2025

Рассмотрим использование двух паттернов программирования в kotlin — singleton и doublecheck.

Читать далее »
Как превратить один тип LiveData в другой
 22 Фев, 2025

В случаях когда один тип LiveData требуется преобразовать в другой, используют медиаторы.

Читать далее »
Как сделать ссылку, которая заставит браузер скачать файл
 20 Фев, 2025

Если коротко, то в тег A можно добавить атрибут download. Это укажет, что содержимое не адрес, куда следует перейти, а файл для скачивания.

Читать далее »
Передача параметров при создании viewModel
 17 Фев, 2025

Распространенная задача — при создании viewModel требуется передать параметры из активити или фрагмента.

Читать далее »
View Binding в kotlin
 15 Фев, 2025

Иногда на собесах спрашивают что такое view binding, и звучит это как некая сложная тема, но на самом деле, это просто фича сборщика, которую можно использовать для упрощения доступа к элементам шаблонов.

Читать далее »
Работа с фрагментами в kotlin
 13 Фев, 2025

Небольшой гайд по работе с фрагментами в android studio.

Фрагменты чем то напоминают фреймы в html. Фрагменты обладают многими возможностями, которые есть у активити (Activity), имеют свой lifecycle, также работают с viewModel и т.п. И конечно же фрагмент имеет собственный шаблон (layout).

Но при этом, фрагмент можно встроить в другой шаблон (используя контейнер FragmentContainerView) и запрограммировать логику активити или другого фрагмента, чтобы он подключал нужный фрагмент, где инкапсулирована требуемая логика.

Читать далее »