TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #454 · 20.07

Установил я тут приложение для оплаты парковок в Петербурге. Открыл его — и ужаснулся. В приложении просто фрейм сайта, и он совершенно ужасен: убогие растровые Leaflet-карты, не адаптированные под телефоны, формы ввода с position:fixed, из-за чего они частично перекрываются клавиатурой на Android, всплывающие сообщения буквально на половину экрана, не запоминающие факт их закрытия, футер, который надо скроллить... "Так верстают только мудаки", — подумал я, но регистрацию всё-таки прошел. Однако, когда я открыл приложение второй раз, оно предложило мне залогиниться, и я увидел совершенно другую картинку: приятные векторные карты, нативные элементы управления, работает шустрее, даже претензия на дизайн. Судя по всему, в приложении просто нет функции регистрации, и они для этого открывают фрейм сайта, который после регистрации остаётся, пока не откроешь приложение заново. "Другое дело, умеют же, когда хотят!" — подумал я. Парковку, впрочем, через это приложение оплатить так и не удалось. #web

Hashtags

Резултати

Намерени 1 подобни публикации

Търсене: #lifecycle

当前筛选 #lifecycle清除筛选
Android Broadcast

@android_broadcast · Post #9683 · 20.11.2025 г., 14:59

🚀Lifecycle 2.10.0 вышел в стабильной версии! Google выпустила мажорное обновление библиотек Lifecycle. Этот релиз сфокусирован на улучшении интеграции с Compose. ⚙️rememberLifecycleOwner для Compose Новый композабл позволяет создавать изолированные LifecycleOwner внутри UI. Идеально для компонентов, которым нужно независимое управление состоянием — например, для HorizontalPager, где только активная страница должна быть в состоянии RESUMED. @Composable fun MyComposable() { val lifecycleOwner = rememberLifecycleOwner( maxLifecycle = Lifecycle.State.RESUMED, parentLifecycleOwner = LocalLifecycleOwner.current, ) CompositionLocalProvider( LocalLifecycleOwner provides lifecycleOwner ) { // Дочерние композаблы теперь имеют собственный жизненный цикл } } 🚀 Интеграция с Navigation 3 Новый артефакт lifecycle-viewmodel-navigation3 предоставляет готовый декоратор для автоматической привязки ViewModel к отдельным экранам в Navigation 3. NavDisplay( backStack = backStack, entryDecorators = listOf( rememberSaveableStateHolderNavEntryDecorator(), rememberViewModelStoreNavEntryDecorator(), // Добавляем эту строку ), entryProvider = entryProvider { /* ... */ } ) Удобства для разработчиков: 👉 Идиоматичный Kotlin API для создания кастомных CreationExtras CreationExtras { this[MY_CUSTOM_KEY] = "myValue" } 👉 Метод savedStateHandle.saved() теперь нативно поддерживает nullable типы 👉Конструкторы SavedStateHandle помечены как @VisibleForTesting ⚠️ Важное изменение Повышение minSdk с API 21 до API 23 — убедитесь, что ваше приложение соответствует новым требованиям. #Jetpack#Lifecycle#Compose#Navigation#ViewModel#Kotlin