TGINSIGHT CHAT
Android Broadcast
@android_broadcast
TechnologiesПодборка новостей и статей для Android разработчиков. Реклама и связь с автором @ab_manager РКН https://abdev.by/rkn_tg_ab#MQRZR
Posts récents
Page 54 sur 84 · 1,000 posts
Publié 9 mai
📹Стратегии тестирования Android (EN, 8м) Оптимизируйте тестирование Android с помощью масштабируемой стратегии, которая поможет управлять нагрузкой на тесты вашего приложения и конфигурациями устройств. От понимания пирамиды тестирования до использования таких инструментов, как Robolectric и Gradle Managed Devices, вы узнаете, как принимать обоснованные решения для повышения надежности и эффективности тестирования. Узнайте, почему ручного тестирования недостаточно, и как автоматизация может сэкономить время и улучшить качество кода. 0:00 - Введение 0:41 - Зачем мы тестируем? 1:21 - Стратегии тестирования 3:06 - Область применения vs. Размер 5:45 - Категории 7:49 - Заключение 🔗Стратегии тестирования #android#тестирование
Hashtags
Publié 9 mai
📹Инструменты и паттерны для масштабируемого тестирования Android-приложений (EN, 10 мин) Лучшие подходы к тестированию Android. Хосе Альсерреке расскажет о тестировании скриншотов, Robolectric, управлении разными форм-факторами и использовании Espresso Device и Gradle Managed Devices (GMD) для масштабируемого тестирования. 0:00 - Введение 0:19 - Что такое тестирование скриншотов? 1:30 - Зачем использовать тестирование скриншотов? 2:52 - Robolectric для тестирования 4:40 - Тестирование для разных размеров экрана 6:48 - Стабильность больших тестов 9:05 - Gradle Managed Devices 9:47 - ИИ и тестирование 10:19 - Заключение Ресурсы: 🔗Тестирование скриншотов 🔗Стратегии Robolectric 🔗Тестирование разных размеров экрана и окон 🔗Тестирование приложений на Android 🔗Стратегии тестирования 🔗Основы тестирования Android-приложений 🔗Локальные тесты 🔗Инструментированные тесты 🔗UI-тесты 🔗Тестирование разных размеров экрана #android#тестирование
Hashtags
Publié 9 mai
🤖В Android 16 появится более тесная системная интеграция приложений с ИИ фичами на устройстве App Functions - новая экспериментальная функция Android, которая позволит интегрироваться приложениям с поиском, но в первую очередь с AI, чтобы выполнять запросы пользователя. Например, "закажи еду", "вызови такси" и пр. Возможности приложения будут индексироваться системным сервисом AppSearchManager Точка входа - класс AppFunctionManager и специальный сервис AppFunctionService. Уже также разрабатывается библиотека 🚀Jetpack App Functions #android16#ai#jetpack
Hashtags
Publié 9 mai
Publié 9 mai
🚀Hilt переезжает на Kotlin 2 и будет работать над поддержку KSP2 #android#jetpack#kotlin#k2#ksp
Publié 9 mai
🚀Jetpack Core Telecom 1.0 - упрощение интеграция VoIP в Android приложениях Библиотека содержит CallsManager API (обертка над ConnectionService) для интеграции Telecom фреймворка в приложения со звонками через интернет, чтобы обеспечить использования всех фичей Android платформы! Это включает в себя: 👉 системные уведомления 👉 приоритезацию работы Foreground Service для звонка 👉 Интеграцию с Bluetooth 👉 Интеграцию с умными часами и автомобилями 👉 Упрощение вывода аудио на разные устройства Различные функции добавляются через механизм расширений. Можете взять уже готовые или реализовать свои! #android#jetpack#jetpackupdate#voip
Publié 9 mai
🚀SavedState 1.3.0: Поддержка KotlinX Serialization и Kotlin Property delegate для удобства работы Что нового: 👉 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") } 🏝 Добавили поддержку KotlinX Serialization🔥 @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 и ViewModel class 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
Publié 9 mai
🚀Релиз Jetpack Lifecycle 2.9.0: тестирование ViewModel и больше KMP 🎉 Новый артефакт 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
Publié 9 mai
🚀Релиз Jetpack Navigation 2.9.0 🛠 Значительные переработки под капотом для улучшения поддержки KMP 👉 Добавлена поддержка обработки deep link из Kotlin Common кода 👉 Улучшения API #jetpack#jetpackupdate#navigation#compose#kmp
Publié 8 mai
📹Android Developers Backstage 215. KMP. Have your code and eat it too Software Engineers Dustin Lam и Yigit Boyar присоединяются к ведущему Tor Norbye, чтобы обсудить Kotlin Multiplatform (KMP). 0:00 - Введение 0:29 - Что такое KMP: не новый продукт, а Kotlin с новыми возможностями 3:20 - Зачем нужен KMP: преимущества и цели 6:17 - KMP vs. другие кроссплатформенные фреймворки 6:41 - Общая бизнес-логика — основной сценарий использования 9:18 - Практическое внедрение: превращение Android-приложения в KMP 13:15 - Работа с платформо-специфичными зависимостями 28:56 - Поддержка библиотек в Kotlin Multiplatform 35:56 - Developer Experience: инструменты и интеграция 40:16 - Совместимость с iOS: как добиться взаимодействия 42:51 - KMP в действии: как Google использует эту технологию 47:17 - Долгосрочное видение и потенциал KMP 51:30 - Консистентность поведения vs. нативная производительность 55:32 - Попробуйте KMP и присоединяйтесь к разработке! #android#kmp
Publié 8 mai
🤖Edge-to-edge в Android: опыт внедрения в АвитоТех и рекомендации по тестированию (9м) Edge-to-edge («от края до края») — это режим в Android, при котором приложение отрисовывается под системными панелями — строкой состояния (status bar), вырезами дисплея или «челкой» (display cutout) и панелью навигации (navigation bar), — используя весь экран смартфона. В Android 16 все приложения будут отображаться в режиме edge-to-edge без исключений. Пора перенять опыт и адаптировать его к себе, либо ваше приложение будет выглядеть плохо #android
Hashtags
Publié 8 mai
📹Compose/iOS готов к продакшену? Прямой эфир с ответами на вопросы Когда: четверг, 8 мая, 18:30 (GMT+3) Буквально вчера вышел Compose iOS Stable и конечно же открывает возможности Android разработчиками по написанию мобильных приложений под обе платформы. Но всё ли так сладко, как заявляет JetBrains? Будем разбираться в этом с экспертом кто уже познал прелести продакшена! 👨💻 Эксперт - Никита, фуллстек Kotlin разработчик, автор проектов FlowMVI и respawn.pro. При анонсе Compose iOS Stable, его приложение было в официальном анонсе 🔥 👨💻 И еще одни эксперт - Чикишев Тимур, Senior Android разработчик в KTS. Начал пробовать Compose iOS еще до официального релиза. Успел адаптировать Android приложение с Compose на iOS, буквально на этой неделе сделали релиз Задавайте свои вопросы в комментариях к посту, чтобы они были заданы на эфире #android#compose#kmp