#Android10 #SmartReply
Generate Auto Suggestion using Android Text Classifier API
В Android 10 было обновлено TextClassifier API и добавлены модели новые модели, который способны распознавать действия для smart reply.
В статье рассматриваются изменения в Android 10 и как улучшить ваши уведомления с помощью машинного обучения на устройстве и TextClassifier API
Generate Auto Suggestion using Android Text Classifier API
В Android 10 было обновлено TextClassifier API и добавлены модели новые модели, который способны распознавать действия для smart reply.
В статье рассматриваются изменения в Android 10 и как улучшить ваши уведомления с помощью машинного обучения на устройстве и TextClassifier API
Medium
Generate Auto Suggestion using Android Text Classifier API
Recently in Android 10 new updates added in TextClassifier API and on-device machine learning model integrated for smart replies and…
#Android
Шпаргалка по фичам Android с 6 версии
Продолжительность: 27:29
Android выпускает новую версию каждую год и каждый раз добавляют новые функции, которые позволяют более тесно интегрировать приложение с системой, обеспечить более высокую безопасность данных и заставляют работать с системой разработчиков более правильно!
На онлайн митапе в ReadMadRobot Костя Цховребов рассмотрел все функции, которые появились в Android c версии 6.0.
Шпаргалка по фичам Android с 6 версии
Продолжительность: 27:29
Android выпускает новую версию каждую год и каждый раз добавляют новые функции, которые позволяют более тесно интегрировать приложение с системой, обеспечить более высокую безопасность данных и заставляют работать с системой разработчиков более правильно!
На онлайн митапе в ReadMadRobot Костя Цховребов рассмотрел все функции, которые появились в Android c версии 6.0.
YouTube
Шпаргалка по фичам Android с 6 версии
В этот раз мы обсудили шпаргалку по фичам, которые появлялись в андроиде, начиная с 6 версии!
👨🏻🍳 поможет ответить, с какой версии вы можете поддержать какую-то фичу
👉 поможет определиться с выбором минимальной версии
💆♂️ напомнит о забытых возможностях…
👨🏻🍳 поможет ответить, с какой версии вы можете поддержать какую-то фичу
👉 поможет определиться с выбором минимальной версии
💆♂️ напомнит о забытых возможностях…
#Gradle #KotlinDSL #Migration
Converting your Android Gradle scripts to Kotlin
Kotlin прекрасен и убрать скриптовый Groovy из Gradle и получить подстветку синтаксиса, автодополнение и единый язык между кодом и Gradle скриптами - это хорошо. Правда за это придется заплатить ценой сборки проекта
В статье поэтапно разбирается миграция на Kotlin Gradle DSL
Converting your Android Gradle scripts to Kotlin
Kotlin прекрасен и убрать скриптовый Groovy из Gradle и получить подстветку синтаксиса, автодополнение и единый язык между кодом и Gradle скриптами - это хорошо. Правда за это придется заплатить ценой сборки проекта
В статье поэтапно разбирается миграция на Kotlin Gradle DSL
Medium
Converting your Android Gradle scripts to Kotlin
Using the same language throughout your whole project can further streamline and speed up your development process. With the stable…
#Kotlin #InlineClass
Low-overhead wrappers using inline classes
Как много применений имеют значения типа Int в Android приложениях? Это и id, и разные типы ресурсов, и пр. Очень легко ошибиться и промахнуться с типом ресурсов. Это позволяет избегать классы-обертки, но их проблема в том, что они создают новые объекты в памяти и заставят работать GC активнее.
Kotlin Inline классы - это то что совмещает в себе удобство Wrapper классов и вам не придется платить цену за создание доп. объектов, так как их не будет.
Low-overhead wrappers using inline classes
Как много применений имеют значения типа Int в Android приложениях? Это и id, и разные типы ресурсов, и пр. Очень легко ошибиться и промахнуться с типом ресурсов. Это позволяет избегать классы-обертки, но их проблема в том, что они создают новые объекты в памяти и заставят работать GC активнее.
Kotlin Inline классы - это то что совмещает в себе удобство Wrapper классов и вам не придется платить цену за создание доп. объектов, так как их не будет.
Okkotlin
Low-overhead wrappers using inline classes
Wrappers shouldn't slow down our programs. Let's have a look at how we can use inline classes to create type-safe lightweight wrappers.
#UnderTheHood
Mastering the Android Touch System
Каждый день мы совершаем тысячи событий для системы, касаясь экрана смартфона. Знание особенностей работы этой системы поможет строить ваши собственные View эффективнее, а также понимать принципы работы для другого функционала связанного с обработкой касаний экрана.
Mastering the Android Touch System
Каждый день мы совершаем тысячи событий для системы, касаясь экрана смартфона. Знание особенностей работы этой системы поможет строить ваши собственные View эффективнее, а также понимать принципы работы для другого функционала связанного с обработкой касаний экрана.
Medium
Mastering the Android Touch System
Let’s explore the Touch Framework
#AOSP
Code Search with Cross References for the AOSP
Google представила новый поиск для Android Open Source Project (AOSP) - Code Search (cs.android.com). Что уже можно попробовать сейчас из функционала:
👉 Поиск
👉 Просмотр исходного кода
👉 Навигация между файлами
👉 Переключение между ветками
Code Search with Cross References for the AOSP
Google представила новый поиск для Android Open Source Project (AOSP) - Code Search (cs.android.com). Что уже можно попробовать сейчас из функционала:
👉 Поиск
👉 Просмотр исходного кода
👉 Навигация между файлами
👉 Переключение между ветками
Android Developers Blog
Code Search with Cross References for the Android Open Source Project
Posted by Jeff Bailey , AOSP Engineering Manager; Ally Sillins , AOSP Program Manager; Kris Hildrum, Open Source Code Search Tech Lead...
#AndroidStudio #AppBundle #GooglePlay #DynamicDelivery
Conditional delivery for app bundles - Android Tool Time 3.5 Features
Остается немного до релиза Android Studio 3.6, а Google опомнилась и все рассказывает про AS 3.5. В новой версии появилась возможность для App Bundle - Conditional delivery. Она позволяет вам устанавливать модули приложения в зависимости от того поддерживает ли ваше устройство определенные функции или находится в заданной стране.
Конечно без модуляризация проекта и использования
Conditional delivery for app bundles - Android Tool Time 3.5 Features
Остается немного до релиза Android Studio 3.6, а Google опомнилась и все рассказывает про AS 3.5. В новой версии появилась возможность для App Bundle - Conditional delivery. Она позволяет вам устанавливать модули приложения в зависимости от того поддерживает ли ваше устройство определенные функции или находится в заданной стране.
Конечно без модуляризация проекта и использования
dynamic-feature
не обойтись.YouTube
Conditional delivery for app bundles - Android Tool Time 3.5 features
With the new added support for Conditional delivery for app bundles, you can now set conditional delivery based on hardware features such as OpenGL versions, support for Augmented Reality, API level or even user country.
Android Tool Time 3.5 Features playlist…
Android Tool Time 3.5 Features playlist…
The importance of USB SuperSpeed for Android Development
Google решила раскрыть важность качественного USB кабеля, для ускорения разработки. Что важного стоит извлечь из статьи:
👉 Важно искать синий коннектор - это явный признак USB 3.0 и хорошей скорости
👉 Не все кабели USB Type-C являются USB 3.X
👉 Существует прямая корреляция между скоростью USB и скоростью итераций проверки
👉 Переходники с Mini/Micro USB на Type-C зачастую портят скорость. Используйте кабели без переходников!
👉 Зачастую USB Hubы используют USB 2.0. Например, мониторы с множеством портов.
Вполне логично было бы услышать такую рекламу от компании фрукта, которая любит зарабатывать на аксессуарах чтобы продать новый Lighting PRO кабель, но рекомендация идет от разработчика из Google.
Google решила раскрыть важность качественного USB кабеля, для ускорения разработки. Что важного стоит извлечь из статьи:
👉 Важно искать синий коннектор - это явный признак USB 3.0 и хорошей скорости
👉 Не все кабели USB Type-C являются USB 3.X
👉 Существует прямая корреляция между скоростью USB и скоростью итераций проверки
👉 Переходники с Mini/Micro USB на Type-C зачастую портят скорость. Используйте кабели без переходников!
👉 Зачастую USB Hubы используют USB 2.0. Например, мониторы с множеством портов.
Вполне логично было бы услышать такую рекламу от компании фрукта, которая любит зарабатывать на аксессуарах чтобы продать новый Lighting PRO кабель, но рекомендация идет от разработчика из Google.
Medium
The importance of USB SuperSpeed for Android Development
OVERVIEW
#Android10 #GestureNavigation #ImmersiveMode
Immersive mode with Gesture Navigation - Android Development Patterns
Новая системы навигации жестами в Android 10 наделала шума среди разработчиков, так как многих пришлось заняться поддержкой своих собственных виджетов и изменять навигацию в существующих. В видео вы найдете как эффективно связать новую систему навигации и Immersive Mode, который позволяет использовать всё пространство экрана и избегать конфликты с жестами
Immersive mode with Gesture Navigation - Android Development Patterns
Новая системы навигации жестами в Android 10 наделала шума среди разработчиков, так как многих пришлось заняться поддержкой своих собственных виджетов и изменять навигацию в существующих. В видео вы найдете как эффективно связать новую систему навигации и Immersive Mode, который позволяет использовать всё пространство экрана и избегать конфликты с жестами
YouTube
Immersive mode with Gesture Navigation
In this video, check out how immersive mode behavior changes with gesture navigation.
Gesture Navigation Devbyte → https://goo.gle/34bdNc0
Edge-to-Edge Devbyte → https://goo.gle/2Eb4bE4
Gesture Navigation: Immersive Modes blog post → https://goo.gle/2YCLS3R…
Gesture Navigation Devbyte → https://goo.gle/34bdNc0
Edge-to-Edge Devbyte → https://goo.gle/2Eb4bE4
Gesture Navigation: Immersive Modes blog post → https://goo.gle/2YCLS3R…
#Android10 #AndroidTV
Android 10 on Android TV
Платформа Android TV обновилась до Android 10, получив под капотом существующего UI все оптимизации и улучшения в безопасности.
Также был представлено устройство ADT-3, предназначенное для разработчиков, которое будет получать обновление быстрее и позволит разработчикам под Android TV раньше тестировать приложения на реальном устройстве. Фактически у Android TV появилось своё Dev Kit устройство.
Android 10 on Android TV
Платформа Android TV обновилась до Android 10, получив под капотом существующего UI все оптимизации и улучшения в безопасности.
Также был представлено устройство ADT-3, предназначенное для разработчиков, которое будет получать обновление быстрее и позволит разработчикам под Android TV раньше тестировать приложения на реальном устройстве. Фактически у Android TV появилось своё Dev Kit устройство.
Android Developers Blog
Android 10 on Android TV
Posted by Paul Lammertsma , Developer Advocate Technology has changed the way media and entertainment is accessed and consumed in the...
This media is not supported in your browser
VIEW IN TELEGRAM
#Animation
Хотите сделать так в своем приложение, тогда читайте "Complex UI/Animation on Android".
Что использовал автор:
👉 Nested Scroll + Coordinator Layout
👉 ValueAnimator
😞 и много кода для расчёта размеров, расстояний и выполнения
К сожалению, пока анимация на Android все еще боль. Посмотрим ли изменит Motion Editor ситуацию и станет ли анимирование сложных иерархий View проще
Хотите сделать так в своем приложение, тогда читайте "Complex UI/Animation on Android".
Что использовал автор:
👉 Nested Scroll + Coordinator Layout
👉 ValueAnimator
😞 и много кода для расчёта размеров, расстояний и выполнения
К сожалению, пока анимация на Android все еще боль. Посмотрим ли изменит Motion Editor ситуацию и станет ли анимирование сложных иерархий View проще
#Retrofit #DynamicProxy
Understand How does Retrofit work
Retrofit - это библиотека, которая первая приходит на ум Android разработчику при необходимости реализации REST API. С помощью чего работает Retrofit, если она не использует Annotation Processor для генерации кода? Ответ Java Dynamic Proxy API, которое позволяет создавать реализацию интерфейса и проксирует все вызовы через InvocationHandler. Это API поможет вам прятать сложные Builder объекты и делать работу с кодом проще. Рекомендую изучить и однажды но вам пригодиться
Understand How does Retrofit work
Retrofit - это библиотека, которая первая приходит на ум Android разработчику при необходимости реализации REST API. С помощью чего работает Retrofit, если она не использует Annotation Processor для генерации кода? Ответ Java Dynamic Proxy API, которое позволяет создавать реализацию интерфейса и проксирует все вызовы через InvocationHandler. Это API поможет вам прятать сложные Builder объекты и делать работу с кодом проще. Рекомендую изучить и однажды но вам пригодиться
Medium
Understand How does Retrofit work
To be a good developer know what is going on under the hood
#Navigation #ArchitectureComponents #CustomTab
Add Chrome Custom Tabs to the Android Navigation Component
Architecture Components предоставило нам множество возможностей и библиотек, которые решили сложности работы с Android SDK. Одним из таких решений стало Navigation. Она позволяет вам эффективно описывать граф навигации, открывая
Как можно расширить и добавить новые типы Destination в графе? Библиотека также позволяет сделать и в статье вы найдете рецепт как сделать это.
Основы рецепта:
1️⃣ Создание собственного Destination
2️⃣ Создание собственного Navigator
3️⃣ Объявление кастомных атрибутов в XML (опционально)
4️⃣ Добавить поддержку нового
Add Chrome Custom Tabs to the Android Navigation Component
Architecture Components предоставило нам множество возможностей и библиотек, которые решили сложности работы с Android SDK. Одним из таких решений стало Navigation. Она позволяет вам эффективно описывать граф навигации, открывая
Fragment
, Activity
, DialogFragment
и deep link.Как можно расширить и добавить новые типы Destination в графе? Библиотека также позволяет сделать и в статье вы найдете рецепт как сделать это.
Основы рецепта:
1️⃣ Создание собственного Destination
2️⃣ Создание собственного Navigator
3️⃣ Объявление кастомных атрибутов в XML (опционально)
4️⃣ Добавить поддержку нового
Navigator
в Navigation Host
Medium
Add Chrome Custom Tabs to the Android Navigation Component
Extending Jetpack’s ability to navigate anywhere
#ArchitectureComponents #Architecture #Modularization
Android Components Architecture in a Modular Word
Хорошая статья в которой происходит разбор модуляризации Android приложения:
👉 Принципы осуществления модуляризации
👉 Модули и их роли
👉 Множество других полезный статей и примеров
👉 Проблемы со сторонними библиотеками
👉 Собственный пример
Android Components Architecture in a Modular Word
Хорошая статья в которой происходит разбор модуляризации Android приложения:
👉 Принципы осуществления модуляризации
👉 Модули и их роли
👉 Множество других полезный статей и примеров
👉 Проблемы со сторонними библиотеками
👉 Собственный пример
Medium
📚 Android Components Architecture in a Modular Word
Over years Android architecture evolved to support production-quality apps on any scale focused on helping developers to design robust…
#Security #KNOX
Secured by Knox — механизмы мобильной безопасности Samsung
Samsung Knox - это проприетарный механизм, обеспечивающий безопасность устройств Samsung. В чем его особенности? Чем от отличается от стандартной защиты в ОС Android. Даже Google скооперировались с Samsung, чтобы улучшить безопасность в последних версиях Android на основе их опыта.
Knox включает в себя множество компонентов:
👉 Аппаратные ключи: Device Unique Hardware Key и Device Root Key
👉 Secure Boot + Samsung Secure Boot Key
👉 Trusted Boot + TrustZone Secure World
👉 Knox Verified Boot
👉 Knox Warranty Bit
👉 Rollback Prevention
👉 Periodic Kernel Measurement
👉 Knox Attestation
и много много других компонентов.
Я был очень удивлен насколько система безопасности в Android была улучшена Samsung.
Secured by Knox — механизмы мобильной безопасности Samsung
Samsung Knox - это проприетарный механизм, обеспечивающий безопасность устройств Samsung. В чем его особенности? Чем от отличается от стандартной защиты в ОС Android. Даже Google скооперировались с Samsung, чтобы улучшить безопасность в последних версиях Android на основе их опыта.
Knox включает в себя множество компонентов:
👉 Аппаратные ключи: Device Unique Hardware Key и Device Root Key
👉 Secure Boot + Samsung Secure Boot Key
👉 Trusted Boot + TrustZone Secure World
👉 Knox Verified Boot
👉 Knox Warranty Bit
👉 Rollback Prevention
👉 Periodic Kernel Measurement
👉 Knox Attestation
и много много других компонентов.
Я был очень удивлен насколько система безопасности в Android была улучшена Samsung.
Хабр
Secured by Knox — механизмы мобильной безопасности Samsung
Если у вас телефон Samsung, то вы, возможно, замечали на экране загрузки фразу «Secured by Knox». Что это вообще значит? Под катом – описание платформы мобильной безопасности, предустановленной на...
#Security #Networking
Secure Communication With the Server From Your Android Client With Certificate Pinning
Обеспечения безопасности данных пользователя в приложениях - важный аспект современной мобильной разработки. Множество данных хранится на устройстве и передаются в сеть. В статье разбирается защита передачи данных по сети, а именно Certificate Pinning:
👉 Стандартная Network Security Configuration (доступна c Android 7.0)
👉 TrustManager
👉 Certificate Pinning в OkHttp
Secure Communication With the Server From Your Android Client With Certificate Pinning
Обеспечения безопасности данных пользователя в приложениях - важный аспект современной мобильной разработки. Множество данных хранится на устройстве и передаются в сеть. В статье разбирается защита передачи данных по сети, а именно Certificate Pinning:
👉 Стандартная Network Security Configuration (доступна c Android 7.0)
👉 TrustManager
👉 Certificate Pinning в OkHttp
Medium
Secure Communication With the Server From Your Android Client With Certificate Pinning
Learn how to write proper security rules for your Android application
#Architecture #SOLID
S.O.L.I.D Principles Explained In Five Minutes
Когда разработчики говорят о хорошей архитектуре всплывают 2 понятия:
В статье вы найдете полный разбор каждой буквы из
👉 Single-responsibility principle (SRP)
👉 Open-closed principle (OCP)
👉 Liskov substitution principle (LSP)
👉 Interface segregation principle (ISP)
👉 Dependency inversion Principle (DIP)
S.O.L.I.D Principles Explained In Five Minutes
Когда разработчики говорят о хорошей архитектуре всплывают 2 понятия:
Clean Architecture
и S.O.L.I.D
В статье вы найдете полный разбор каждой буквы из
S.O.L.I.D.
:👉 Single-responsibility principle (SRP)
👉 Open-closed principle (OCP)
👉 Liskov substitution principle (LSP)
👉 Interface segregation principle (ISP)
👉 Dependency inversion Principle (DIP)
Medium
S.O.L.I.D Principles Explained In Five Minutes
A guide to understandable, reusable, testable, maintanable and flexible codebase.
#Security #BugHunting
Безопасность Android приложений с Дмитрием Лукьяненко
Безопасность пользовательских данных важна так, как смартфон является основным гаджетом для большинства людей. Любой Android разработчик должен обеспечивать защиту хранения всех данных, передачу их на сервер, а также не позволить злоумышленникам взломать ваше приложение.
Мы обсудил этот вопрос с Дмитрием Лукьяненко. Дима зарабатывает тем, что ищет уязвимости и крэши в приложениях и сообщает об этом разработчикам приложений. Такие компании как Google и Facebook готовы платить до 1 000 000 $ за уязвимости, причем Google платит даже не только за свои, но и популярные приложения в Google Play.
Связаться с Димой - vulnano.research@gmail.com
Полезные ссылки:
👉 Платформы агрегаторы баг баунти от множества компаний - Hackerone, Bugcrowd
👉 Google Play Security Reward Program
👉 Основные классы Android уязвимостей
👉 Новости о безопасности
👉 Платформа по покупке уязвимостей в ПО, но не с целью их фикса
👉 Manifest Merger Tool
👉 Google Play Protect
👉 OWASP
👉 Android Network Security Config
👉 Настройка Certificate Pinning в Android
👉 Слайды к докладу по оптимизации размера приложения
👉 Хитрые словари для ProGuard/R8 от Facebook
👉 Библиотека AndroidX.Security
Безопасность Android приложений с Дмитрием Лукьяненко
Безопасность пользовательских данных важна так, как смартфон является основным гаджетом для большинства людей. Любой Android разработчик должен обеспечивать защиту хранения всех данных, передачу их на сервер, а также не позволить злоумышленникам взломать ваше приложение.
Мы обсудил этот вопрос с Дмитрием Лукьяненко. Дима зарабатывает тем, что ищет уязвимости и крэши в приложениях и сообщает об этом разработчикам приложений. Такие компании как Google и Facebook готовы платить до 1 000 000 $ за уязвимости, причем Google платит даже не только за свои, но и популярные приложения в Google Play.
Связаться с Димой - vulnano.research@gmail.com
Полезные ссылки:
👉 Платформы агрегаторы баг баунти от множества компаний - Hackerone, Bugcrowd
👉 Google Play Security Reward Program
👉 Основные классы Android уязвимостей
👉 Новости о безопасности
👉 Платформа по покупке уязвимостей в ПО, но не с целью их фикса
👉 Manifest Merger Tool
👉 Google Play Protect
👉 OWASP
👉 Android Network Security Config
👉 Настройка Certificate Pinning в Android
👉 Слайды к докладу по оптимизации размера приложения
👉 Хитрые словари для ProGuard/R8 от Facebook
👉 Библиотека AndroidX.Security
YouTube
Безопасность Android приложений
Безопасность пользовательских данных важна так, как смартфон является основным гаджетом для большинства людей. Любой Android разработчик должен обеспечивать защиту хранения всех данных, передачу их на сервер, а также не позволить злоумышленникам взломать…
#JetpackCompose #UI
Jetpack Compose — A New and Simple Way to Create Material-UI in Android
Несомненно самое ожидаемое нововведение в Android разработке - это Jetpack Compose. Эта библиотека изменит как мы пишем UI и сделает "Kotlin First" неизбежным. В статье происходит краткий обзор и то как попробовать новую библиотеку в Android Studio 4.0
Jetpack Compose — A New and Simple Way to Create Material-UI in Android
Несомненно самое ожидаемое нововведение в Android разработке - это Jetpack Compose. Эта библиотека изменит как мы пишем UI и сделает "Kotlin First" неизбежным. В статье происходит краткий обзор и то как попробовать новую библиотеку в Android Studio 4.0
Medium
Jetpack Compose — A New and Simple Way to Create Material-UI in Android
Learn how to create UI without any XML files
Android Broadcast
#Retrofit #DynamicProxy Understand How does Retrofit work Retrofit - это библиотека, которая первая приходит на ум Android разработчику при необходимости реализации REST API. С помощью чего работает Retrofit, если она не использует Annotation Processor…
#Retrofit #DynamicProxy #Dex
Dynamic proxy и runtime-кодогенерация на Android / Даниил Попов
Продолжительность 33:30
Для всех тех, кого заитересовала тема Dynamic Proxy рекомендую посмотреть доклад от Даниила Попова. В нем автор рассказал о проблемах с производительность
Полезные ссылки:
👉 Результаты эксперимента по оптимизации от Даниила можно найти здесь
👉 Готовое production ready решение Dexmaker от Linkedin
Dynamic proxy и runtime-кодогенерация на Android / Даниил Попов
Продолжительность 33:30
Для всех тех, кого заитересовала тема Dynamic Proxy рекомендую посмотреть доклад от Даниила Попова. В нем автор рассказал о проблемах с производительность
Dynamic Proxy
и рефлексии
, используемой под капотом, в рамках Android и как можно обойти это решения с использованием генерации Dex.Полезные ссылки:
👉 Результаты эксперимента по оптимизации от Даниила можно найти здесь
👉 Готовое production ready решение Dexmaker от Linkedin
YouTube
Dynamic proxy и runtime-кодогенерация на Android / Даниил Попов
Apps Conf Moscow 2019
Зал «Бороться бессильны?»
22 апреля, 13:00
Тезисы и презентация:
http://appsconf.ru/moscow/2019/abstracts/4504
- Структурный шаблон проектирования прокси;
- Какими способами можно его реализовать на Android, их плюсы и минусы;
- Подробный…
Зал «Бороться бессильны?»
22 апреля, 13:00
Тезисы и презентация:
http://appsconf.ru/moscow/2019/abstracts/4504
- Структурный шаблон проектирования прокси;
- Какими способами можно его реализовать на Android, их плюсы и минусы;
- Подробный…