Kotlin официально стал основном языком для Android разработки, Coroutine - рекомендуемый подход, представлен Jetpack Compose. Рады ли вы таким переменам?
Final Results
74%
Да, уже давно пишу на Kotlin
20%
Я за равноправие Java и Kotlin
1%
Писал на Java и буду писать
3%
Пишу на других языках
3%
Другой (пишите в чатике @android_broadcast_discussions)
👍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 для мобильных приложений, что позволит использовать мобильных приложения в качеств удостоверений, например водительских прав.
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 для мобильных приложений, что позволит использовать мобильных приложения в качеств удостоверений, например водительских прав.
Android Developers Blog
What’s New in Android Q Security
Today at Google I/O we lifted the curtain on all the new security features being integrated into Android Q. We plan to go deeper on each feature in the coming weeks and months, but first wanted to share a quick summary of all the security goodness we’re adding…
👍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 эта цена запись от стандартной библиотеки, дополнительный генерируемый байткод и выделение объектов
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 эта цена запись от стандартной библиотеки, дополнительный генерируемый байткод и выделение объектов
YouTube
Kotlin under the hood: Understand the internals (Google I/O'19)
Kotlin offers great, modern language features and a rich set of extensions. But it's not always obvious to the developer what's happening under the hood. This session will help you understand better what these features and extensions are doing internally.…
👍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
👉 Добавлена опция
Вышел 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 вашего проекта и код удалиться.Guardsquare
ProGuard 6.1 released | Guardsquare
ProGuard 6.1 supports Java versions 10, 11, 12 and offers important enhancements, such as the optimization of Gson serialization.
👍1
Какую утилиту для обфускации/оптимизации кода вы используете?
Final Results
61%
ProGuard
17%
R8
14%
Не использую
8%
Не знаю что это такое
👍1
#OkHttp #Kotlin
Metrics for OkHttp’s Kotlin Upgrade
OkHttp мигрирует на Kotlin 🎉в версии 4.0. Работа по миграции только начата, и ее результаты мы сможем увидеть в середине лета.
Еще думаете на чем писать код в Android❓
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)
Fabric анонсировала мажорное обновление в roadmap и график миграции
Больше 2 лет назад Google поглотила #Fabric, который стал частью #Firebase. Сервисы постепенно интегрировались и теперь объявлена дата окончания работы Fabric - 31 марта 2020 года.
Не всем сервисам еще готова замена, например Crashlytics Beta, использующийся для распространения тестовых сборок приложения. На его замену приходит новый сервис - Firebase App Distribution, доступный в альфа. Для участия в тестировании нового сервиса надо подать заявку. Сервис планируется выйти в Beta в течение нескольких месяцев.
Одна из долгожданных функций - поддержка нативных крешей (Android NDK)
Firebase
Firebase is Google's mobile platform that helps you quickly develop high-quality apps and grow your business.
👍1
#GooglePlay #InAppUpdate
Разбор in-app updates на Android
Для всех тех кто решил встроить новую библиотеку для обновлений приложений к себе рекомендую ознакомиться с подробным обзором библиотеки
Разбор in-app updates на Android
Для всех тех кто решил встроить новую библиотеку для обновлений приложений к себе рекомендую ознакомиться с подробным обзором библиотеки
Joe Birch
Exploring in-app updates on Android
I'm sure there has often been a time when you've needed to send out an app update that has some form of urgency - maybe there's a security issue or some bug which is causing a lot of issues for users. Previously, we've needed to roll out a new update on the…
👍1
Я не пишу о библиотеках, которые не находятся в стабильной версии, только за редким исключением. Как вы относитесь к этому?
Final Results
24%
Все верно
10%
Писать только про стабильные (beta и выше)
61%
Если интересная либа, то можно и про нестабильную написать
6%
Без разницы
👍1
#AndroidQ
Android Q: Gestural Navigation
Android Q добавляет новую навигацию вместо 3 кнопок, аналогичную iPhone X. Обновленная навигация позволит отображать UI на весь дисплей без черных полос. Больше подробностей в видео. Надеюсь что теперь можно будет понять и границы закругленных дисплеев.
Android Q: Gestural Navigation
Android Q добавляет новую навигацию вместо 3 кнопок, аналогичную iPhone X. Обновленная навигация позволит отображать UI на весь дисплей без черных полос. Больше подробностей в видео. Надеюсь что теперь можно будет понять и границы закругленных дисплеев.
YouTube
Android 10: Gestural navigation
Android 10 now supports a new, out of the box navigation experience. Navigation gestures are supported as a new mode, separate from the traditional 3 button bar. This allows your app to take complete advantage of the full screen, which provides a more immersive…
👍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. Для тех кто задумывался стоит - этот курс неплохая отправная точка
Developing Android Apps with Kotlin
Ha Google I/O 2019 объявили о том, что Kotlin - основной и рекомендуемый язык программирования для разработки Android приложений.
Google совместно с Udacity разработали бесплатный курс по Android разработке на Kotlin. Для тех кто задумывался стоит - этот курс неплохая отправная точка
👍1
#RxJava #Uber #Debug
RxDogTag 0.2.0
Библиотека, которая поможет вам легче находить где произошел крэш в вашей Rx цепочке
RxDogTag 0.2.0
Библиотека, которая поможет вам легче находить где произошел крэш в вашей Rx цепочке
GitHub
GitHub - uber/RxDogTag: Automatic tagging of RxJava 2+ originating subscribe points for onError() investigation.
Automatic tagging of RxJava 2+ originating subscribe points for onError() investigation. - uber/RxDogTag
👍1
#AndroidQ #UI
Android Q - Edge to Edge Apps
В Android Q агитируют за написание приложений, которые будут отображаться на весь экран (Edge-to-Edge) под системными панелями (панель навигации и состояния), даже сделали новую iПодобную навигацию.
Будет круто если наконец-то добавят API, с помощью которого полноценно можно будет определять загнутые края экрана и прочие изощрения производителей.
Android Q - Edge to Edge Apps
В Android Q агитируют за написание приложений, которые будут отображаться на весь экран (Edge-to-Edge) под системными панелями (панель навигации и состояния), даже сделали новую iПодобную навигацию.
Будет круто если наконец-то добавят API, с помощью которого полноценно можно будет определять загнутые края экрана и прочие изощрения производителей.
YouTube
Android 10: Edge to edge apps
With Android 10, you can give your users a full edge to edge screen experience on your apps. Learn how to use Gestural Navigation to make the navigation/system bar transparent and how to handle conflicting gestures on your app.
Becoming a Master Window Fitter…
Becoming a Master Window Fitter…
👍1