#jetpack #jetpackupdate #производительность #gradle
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
#jetpack #js #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
Что нового:
👉 Возможность настройки AsyncLayoutFactory при инициализации AsyncLayoutInflater, что позволяет использовать AsyncAppCompatFactory для корректной работы с AppCompat view
👉 inflate метод теперь принимает Executor на котором будет вызван callback OnInflateFinishedListener
#android #jetpack #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
Также сегодня вышли beta версии Jetpack Navigation 2.9, Jetpack Lifecycle 2.9 (lifecycle, viewmodel), Saved State 1.3, Jetpack Activity 1.11, RecyclerView-Selection Version 1.2.0
#android #jetpack #jetpackupdate
#android #jetpack #jetpackupdate
👍15
#jetpack #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
Вышла библиотека Jetpack Print 1.1.0, которая перешла на RGB формат при отправке изображения на принтеры для лучшей совместимости
#jetpack #jetpackupdate
#jetpack #jetpackupdate
👍10
#jetpack #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍3
🛠 Значительные переработки под капотом для улучшения поддержки KMP
👉 Добавлена поддержка обработки deep link из Kotlin Common кода
👉 Улучшения API
#jetpack #jetpackupdate #navigation #compose #kmp
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22
🎉 Новый артефакт
lifecycle-viewmodel-testing - KMP библиотека для тестирования ViewModel в изоляции с помощью ViewModelScenario👉 SavedStateHandle теперь может возвращать MutableStateFlow
👉 CreationExtras добавили перегрузки операторов in, +=, и +
Больше поддержки KMP
👉
lifecycle-testing, lifecycle-viewmodel-savedstate теперь полностью KMP библиотеки👉 LocalLifecycleOwner стал доступен из common кода
👉 ViewModelProvider.NewInstanceFactory теперь доступна для Android и JVM
#android #jetpack #jetpackupdate #kmp
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍5
Что нового:
👉 SavedState теперь полностью KMP библиотека с поддержкой Android, iOS, Linux, Mac и JVM
👉 LocalSavedStateRegistryOwner теперь не является частью Compose UI, а будет частью нового артефакта - savedstate-compose
👉 Появился обобщенный тип SavedState, который Bundle на Android и Map<String, Any> на других платформах
// Создаем SavedState с помощью DSL:
val savedState = savedState {
putInt("currentPage", 1)
putString("filter", "favorites")
}
val currentPage = savedState.read { getInt("currentPage") }
savedState.write { remove("currentPage") }
@Serializable
data class Person(val firstName: String, val lastName: String)
fun main() {
val person = Person("John", "Doe")
val encoded: SavedState = encodeToSavedState(person)
val decoded: Person = decodeFromSavedState(encoded)
}saved в Activity и ViewModelclass MyActivity : ComponentActivity() {
var person by saved { Person("John", "Doe") }
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
this.person = Person("Jane", "Doe")
}
}
class MyViewModel(handle: SavedStateHandle) : ViewModel() {
var person by handle.saved { Person("John", "Doe") }
fun onPersonChanged(person: Person) {
this.person = person
}
}#android #jetpack #jetpackupdate #kmp #kotlin #ios #desktop
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥30👍9🤔5
Библиотека содержит CallsManager API (обертка над ConnectionService) для интеграции Telecom фреймворка в приложения со звонками через интернет, чтобы обеспечить использования всех фичей Android платформы! Это включает в себя:
👉 системные уведомления
👉 приоритезацию работы Foreground Service для звонка
👉 Интеграцию с Bluetooth
👉 Интеграцию с умными часами и автомобилями
👉 Упрощение вывода аудио на разные устройства
Различные функции добавляются через механизм расширений. Можете взять уже готовые или реализовать свои!
#android #jetpack #jetpackupdate #voip
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23👍7❤1
В этот раз вас жду багфиксы: Room 2.7.2 и WorkManager 2.10.2, а также первая RC версия Benchmark Version 1.4.0
#android #androiddev #jetpack #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11
В версии Jetpack Lifecycle 2.9.2 добавили поддержку WasmJS тартега, а это значит что библиотека теперь может работать на всех KMP таргетах: JVM (Android, Desktop), Native (Linux, iOS, watchOS, macOS, MinGW) и Web (JavaScript, WasmJS)
#android #kmp #wasmjs #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥6❤1🎉1
Jetpack SavedState 1.3.1 закончила разработку поддержку KMP. Теперь все существующие таргеты добавлены: JVM (Android, Desktop), Native (Linux, iOS, watchOS, macOS, MinGW) и Web (JavaScript, WasmJS)
Jetpack SavedState - это библиотека для сохранения состояния ViewModel при смерте процесса приложения
class SavedStateViewModel(
private val savedStateHandle: SavedStateHandle,
) : ViewModel() {
val filteredData: StateFlow<List<String>> =
savedStateHandle.getStateFlow<String>("query")
.flatMapLatest { query ->
repository.getFilteredData(query)
}
fun setQuery(query: String) {
savedStateHandle["query"] = query
}
}
#android #kmp #wasmjs #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉25👍9🔥3
#kmp #sqlite #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🎉2
Jetpack Car App - библиотека для разработки приложений под Android Auto и Android Automotive ОС
Что нового
📐 Новые API для построения интерфейсов контента и карты
🧹 Чистка deprecated API
👉 Новые API для показа сообщений из чатов
👉 Новые API для получения данных машины
🛠 + Мелкие улучшения UI и работы с локацией
#android #jetpackupdate #androidauto #gemini
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍21
Что нового:
👉 WindowSizeClass появились разделения для больших (Large - от 1200 до 1600) и очень больших (XLarge - более 1600 dp) экранов
👉 Получение WindowMetrics теперь работает с Application Context, а не только с UI Context
👉 Добавили API для автоматического сохранения и восстановления статуса встраивания Activity при перезапуске процесса
👉 Удалили экспериментальное API WindowInsets
#android #androidjetpack #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23❤6👍5
Что важного в новой версии:
🎉 Новое API: setRemoteSessionTimeoutMillis() в Configuration.Builder — задаёт время жизни сессии RemoteWorkManager после последнего использования.
class App : Application(), Configuration.Provider {
override fun getWorkManagerConfiguration(): Configuration {
return Configuration.Builder()
// Сколько живёт RemoteWorkManager-сессия после последнего использования
.setRemoteSessionTimeoutMillis(TimeUnit.MINUTES.toMillis(5))
.build()
}
}🎉 Тестирование: TestDriver.stopRunningWorkWithReason(...) — можно останавливать выполняющуюся работу с указанием причины.
Зачем: удобно эмулировать внешние условия (остановку системой/приложением) и проверять, что код корректно реагирует на «принудительное завершение».
// Arrange
val request = OneTimeWorkRequestBuilder<MyWorker>().build()
WorkManager.getInstance(context).enqueue(request).result.get()
// Act
val testDriver = WorkManagerTestInitHelper.getTestDriver(context)!!
testDriver.stopRunningWorkWithReason(
request.id,
/* reason */ 0 // укажите код причины, например ваш тестовый/константу из проекта
)
// Assert — далее проверяете ожидаемое состояние
🛠 Также сделали исправление багов
#android #jetpack #workmanager #jetpackupdate #androidjetpack
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤5🔥4
Saved State — это библиотека Jetpack, которая помогает сохранять и восстанавливать состояние при пересоздании, например из-за изменений конфигурации в Android или при выгрузке процесса системой. Поддерживает Kotlin Multiplatform
Вышел
androidx.savedstate:1.4.0, и в этом обновлении основное внимание уделено улучшению API. Ключевое изменение - добавлена нативная поддержка nullable типов в SavedStateRegistryOwner.saved, а также в функциях encodeToSavedState() и decodeFromSavedState() — теперь можно напрямую сохранять и восстанавливать null-значения без костылей.// Теперь это работает корректно без дополнительных проверок.
var name: String? by savedState(saved = "name", default = null)
#android #jetpack #kotlin #kmp #jetpackupdate #androidjetpack
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥8❤1
Что нового:
🌙 Добавлен атрибут
isLightTheme для тем SplashScreen — можно корректно выбирать оформление под светлую/тёмную тему🖼 Иконка загрузки теперь корректно подтягивается через AppCompatResources (улучшена поддержка ресурсов и векторных изображений)
👉 Убрали ручное объявление обращения к новым API — теперь всё автоматически моделируется при сборке с AGP ≥ 7.3 и R8 ≥ 3.3
#android #jetpack #androidjetpack #jetpackupdate
Please open Telegram to view this post
VIEW IN TELEGRAM
👍34🎉5❤4