Android Broadcast – Telegram
Android Broadcast
14.4K subscribers
3.68K photos
367 videos
11 files
6.1K links
Подборка новостей и статей для Android разработчиков.

Реклама и связь с автором @ab_manager

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Пример анимации, построенной на основе #MotionLayout
👍1
#Kotlin #Coroutines #GoogleIO #KotlinFirst

First Class Coroutines Support

🎉Kotlin Coroutine теперь официально рекомендуемый и поддерживаемый подход для асинхронных операций на Android 🎉
👍1
#GoogleIO #Kotlin #Coroutines #AndroidX

Understand Kotlin Coroutines on Android

Очень хороший доклад по Coroutines, в котором освещаются
👉 базовые моменты работы корутин
👉 Чем Coroutines они отличаются от блокирующего подхода
👉 поддержка корутин в библиотеках: WorkManager, Room, ViewModel, LiveData, Lifecycle
👉 Тестирование Coroutines

Из доклада видно как активно добавляется поддержка Kotlin Coroutines в библиотеки #AndroidX и это показывает в действие Kotlin First в Android.
👍1
#Coroutines #AndroidX

Use Kotlin coroutines with Architecture components

В AndroidX для поддержки Coroutines добавили следующее:
👉 CoroutineWorker для WorkManager, позволяющий выполнять задачу при помощи корутин
👉 Поддержка suspend функций в Room. Пока нет возможности наблюдать за изменениями с помощью Channel и Flow, но их поддержка уже в работе
👉 Поддержка Coroutine в LiveData
👉 ViewModel.viewModelScope
👉 LifecycleScope - CoroutineScope, связанный с Lifecycle
👉 Lifecycle-aware Coroutines: whenCreated, whenStarted, whenResumed, которые запустятся в соотвествующий момент жизненного цикла

Замечание: Множество из нового функционала доступны в следующих версиях библиотек, которые еще на в релизе
👍1
Kotlin официально стал основном языком для Android разработки, Coroutine - рекомендуемый подход, представлен Jetpack Compose. Рады ли вы таким переменам?
Final Results
74%
Да, уже давно пишу на Kotlin
20%
Я за равноправие Java и Kotlin
1%
Писал на Java и буду писать
3%
Пишу на других языках
👍1
#GoogleIO #Security #Android #AndroidX #ProjectMainline

What’s New in Android Q Security

В новой версии Android Google сконцентрировались на безопасности:
👉 Улучшенная система разрешений
👉 Project Mainline - новый способ доставки и установки обновление безопасности, не требующих OTA обновления от производителя, а установка их напрямую из Google Play и убирает привязку к OEM. Подробнее "Fresher OS with Projects Treble and Mainline"
👉 Поддержка TLS 1.3
👉 Adiantum - шифрование данных, не требующих специального железа и достаточно нетребовательное к ресурсам, что позволяет им работать от умных часов и до IoT устройств
👉 Для всех устройств на Android Q+ теперь шифрование данных будет обязательным
👉 Изолированная песочница для софтовых кодеков
👉 Ограничение доступа к системному API
👉 Рандомизация MAC адреса при подключение к Wi-FI
👉 Улучшения в BiometricPrompt API
👉 Библиотека AndroidX Security, которая упрощает шифрование файлов и SharedPreferences
👉 Приложения в фоне не могут запустить Activity
👉 Scoped Storage, который был отложен на Android R
👉 Google Assistant сможет работать на устройстве без необходимости обращения к серверам
👉 Больше проверок в LLVM: BoundSan, улучшение IntSan, Shadow Call Stack (SCS), eXecute-Only Memory, Scudo Hardened Allocator. Больше подробностей "Queue the Hardening Enhancements"

Работы по безопасности продолжаются: в Google активно работают над поддержкой Electronic ID для мобильных приложений, что позволит использовать мобильных приложения в качеств удостоверений, например водительских прав.
👍1
#GoogleIO #Kotlin #UnderTheHood

Google I/O'19: Kotlin Under the Hood: Understand the Internals
Продолжительность: 40:45

Доклад в котором рассматривается цена фичей на пример Kotlin/JVM, за которые мы любим Kotlin:
👉 Null safety
👉 when expression
👉 lazy{} делегат
👉 Unsigned числа (experimental)
👉 Ranges
👉 Inline классы (experimental)
👉 Создание массивов
👉 Лямбда
👉 Вызов Extenstion функций
👉 Значения параметров метода по умолчанию
👉 State машина Coroutine

Главное что стоит помнить при использование различных фичей Kotlin - они имеют свою цену, так как реализуются поверх другой технологии (JVM, Native, JS) и для работы функций в конечной среде выполнения, их нужно реализовывать на поддерживаемых средой технологиях.

За это приходиться платить цену, например в Kotlin/JVM эта цена запись от стандартной библиотеки, дополнительный генерируемый байткод и выделение объектов
👍1
#ProGuard #Gson #Java8

Вышел ProGuard 6.1

Пока Google активно разрабатывает R8 и готовиться заменить им #ProGuard в Android, разработчики последнего трудятся над новыми функциями:
👉 Поддержка Java 10, 11 и 12
👉 Бекпорт кода, использующего Java 8 Collection Stream API и Date Time API. Использование этого API автоматически заменяется на библиотеки, потрирующие этот функционал. Особенно актуально для Android проектов
👉 Оптимизация для Gson
👉 Добавлена опция -assumevalues, которая позволяет указать, что метод или поле возвращают определенное значение. Это полезно для #AndroidX библиотек, которые содержат код для старых версий ОС, неподдериживаемые вашим приложением. Укажите Build.VERSION.SDK_INT = minSdk вашего проекта и код удалиться.
👍1
Какую утилиту для обфускации/оптимизации кода вы используете?
Final Results
61%
ProGuard
17%
R8
14%
Не использую
8%
Не знаю что это такое
👍1
#OkHttp #Kotlin

Metrics for OkHttp’s Kotlin Upgrade

OkHttp мигрирует на Kotlin 🎉в версии 4.0. Работа по миграции только начата, и ее результаты мы сможем увидеть в середине лета.

Еще думаете на чем писать код в Android
👍1
#Firebase #Fabric

Fabric анонсировала мажорное обновление в roadmap и график миграции

Больше 2 лет назад Google поглотила #Fabric, который стал частью #Firebase. Сервисы постепенно интегрировались и теперь объявлена дата окончания работы Fabric - 31 марта 2020 года.

Не всем сервисам еще готова замена, например Crashlytics Beta, использующийся для распространения тестовых сборок приложения. На его замену приходит новый сервис - Firebase App Distribution, доступный в альфа. Для участия в тестировании нового сервиса надо подать заявку. Сервис планируется выйти в Beta в течение нескольких месяцев.

Одна из долгожданных функций - поддержка нативных крешей (Android NDK)
👍1
Обновленный roadmap миграции
👍1
#GooglePlay #InAppUpdate

Разбор in-app updates на Android

Для всех тех кто решил встроить новую библиотеку для обновлений приложений к себе рекомендую ознакомиться с подробным обзором библиотеки
👍1
Я не пишу о библиотеках, которые не находятся в стабильной версии, только за редким исключением. Как вы относитесь к этому?
Final Results
24%
Все верно
10%
Писать только про стабильные (beta и выше)
61%
Если интересная либа, то можно и про нестабильную написать
6%
Без разницы
👍1
#AndroidQ

Android Q: Gestural Navigation

Android Q добавляет новую навигацию вместо 3 кнопок, аналогичную iPhone X. Обновленная навигация позволит отображать UI на весь дисплей без черных полос. Больше подробностей в видео. Надеюсь что теперь можно будет понять и границы закругленных дисплеев.
👍1
К вам пришел человек, который хочет стать Android разработчиком. Какой язык программирования вы посоветуете ему учить первым?
Final Results
33%
Kotlin
52%
Java
5%
Будущее за кроссплатморфом
11%
Отговорю становиться программистом 😀
👍1
#Course #Kotlin #Android

Developing Android Apps with Kotlin

Ha Google I/O 2019 объявили о том, что Kotlin - основной и рекомендуемый язык программирования для разработки Android приложений.

Google совместно с Udacity разработали бесплатный курс по Android разработке на Kotlin. Для тех кто задумывался стоит - этот курс неплохая отправная точка
👍1