#Conference #Minsk #Review #MobileOptimized
Впечатления от Mobile Optimized 2019 - крупнейшей конференции по мобильным технология в Беларуси
Впечатления от Mobile Optimized 2019 - крупнейшей конференции по мобильным технология в Беларуси
Telegraph
Впечатления от Mobile Optimized 2019
Привет! Меня зовут Кирилл Розов и я разработчик с 8 годами опыта разработки в Android. Я возглавляю Android разработку в компании Humans и веду Telegram канала с новостями об Android разработке - Android Broadcast. Хочу поделиться своими впечатлениями от…
Понравилась вам идея с обзором конференции?
Final Results
69%
Да, стоит делать такое в будущем
3%
Да, но больше не стоит
4%
Нет
24%
Не читал
#Kotlin
The problem with extension functions
Что с этой прекрасной возможность языка может быть не так? Как с этим связано Kotlin DSL? В этом разбирается Мартин Москала
The problem with extension functions
Extension функции
- одна из самых популярных и любимых функций разработчиков, использующих Kotlin. Extension функции
позволили решить проблему с расширением API классов, делать его консистентным со сторонни и использовать новые подходы для проектирования API.Что с этой прекрасной возможность языка может быть не так? Как с этим связано Kotlin DSL? В этом разбирается Мартин Москала
Medium
The problem with extension functions
Extension functions are a great feature. Although they started being overused what leads to problems we don’t know how to solve yet.
#новости
По семейным обстоятельствам я беру перерыв на ближайшие 2 недели. Что это значит? Частота новостей будет снижена и новости будут выходить реже.
По семейным обстоятельствам я беру перерыв на ближайшие 2 недели. Что это значит? Частота новостей будет снижена и новости будут выходить реже.
#Automotive
Android Automotive OS updates for developers
Google развивает свою ОС для автомобилей - Android Automotive OS (не путайте с Android Auto).
Отличие этих ОС в том, что Android Automotive встраивается в ваш автомобиль, имеет доступ к датчикам автомобиля и может работать независимо от внешнего устройства. Для работы Android Auto требуется подключение смартфона на Android и она выступает простой медиа системой и имеет доступ только к датчикам телефона.
Google добавили возможность использовать эмулятор Android Automotive OS с магазинон Google Play. Уже сейчас вы можете запросить доступ к консоле Google Play для новой ОС от Google.
Android Automotive OS updates for developers
Google развивает свою ОС для автомобилей - Android Automotive OS (не путайте с Android Auto).
Отличие этих ОС в том, что Android Automotive встраивается в ваш автомобиль, имеет доступ к датчикам автомобиля и может работать независимо от внешнего устройства. Для работы Android Auto требуется подключение смартфона на Android и она выступает простой медиа системой и имеет доступ только к датчикам телефона.
Google добавили возможность использовать эмулятор Android Automotive OS с магазинон Google Play. Уже сейчас вы можете запросить доступ к консоле Google Play для новой ОС от Google.
Android Developers Blog
Android Automotive OS updates for developers
Posted by Madan Ankapura, Product Manager, Android Google’s vision is to bring a safe and seamless connected experience to every car. ...
#Dagger #Multibindings
Dagger 2 Multibindings Illustrated
Dagger 2 имеет множество возможностей, хотя множество разработчиков используют его по простому сценарию: "1 модуль. 1 компонент. @Inject. AppComponent.inject(...)". Но в Dagger есть много интересного функционала. Например, Multibinding, который позволяет вам объединять зависимости одного типа из разных модулей и компонентов в
Когда это может пригодиться? Когда у вас есть обработчики для создания элементов по типу элементов. Это эффективно можно применить для выполнения доставки зависимостей в конструктор
1. Предоставляете способ создания
2. Из Dagger вы можете получить
Код получается гибким и хорошо расширяемым. А значит мы и улучшили нашу архитектуру
В статье вы найдете руководство как использовать эту возможность библиотеки и делать архитектуру ваших приложений более гибкой.
Dagger 2 Multibindings Illustrated
Dagger 2 имеет множество возможностей, хотя множество разработчиков используют его по простому сценарию: "1 модуль. 1 компонент. @Inject. AppComponent.inject(...)". Но в Dagger есть много интересного функционала. Например, Multibinding, который позволяет вам объединять зависимости одного типа из разных модулей и компонентов в
Set
или Map
.Когда это может пригодиться? Когда у вас есть обработчики для создания элементов по типу элементов. Это эффективно можно применить для выполнения доставки зависимостей в конструктор
Fragment
(поддерживается в androidx.fragment 1.1.0):1. Предоставляете способ создания
Fragment
в Dagger модуле2. Из Dagger вы можете получить
Map<Class<Fragment>, Provider<Fragment>>
Код получается гибким и хорошо расширяемым. А значит мы и улучшили нашу архитектуру
В статье вы найдете руководство как использовать эту возможность библиотеки и делать архитектуру ваших приложений более гибкой.
Medium
Dagger 2 Multibindings Illustrated
Dagger 2 has a multibindings capability. It is a powerful feature package dependencies into SET and MAP automatically.
Используете ли вы Dagger 2 Multibinding?
Anonymous Poll
21%
Да
10%
Знаю, но не использую
28%
Не знал/знала что это такое
20%
Нет
21%
Использую другой DI
#FBReader
Пишем читалку электронных книг на Android с помощью FBReader SDK
EPUB, FB2 и MOBI - это самые популярные форматы для распространения электронных книг. Для решения задачи интеграции отображения таких файлов можно воспользоваться FBReader SDK.
Библиотека имеет множество возможностей:
👉 Открытие множество файлов электронных книг
👉 Чтение метаданных из файла книги
👉 Особенности движка FBReader
👉 Возможность менять стиль текста книги и яркость
👉 Выделение текста
👉 Закладки
👉 Поиск по тексту
👉 Оглавление
👉 Дополнительная навигация по тексту
👉 Поддержка сносок и гиперссылок
Библиотека платная. В бесплатном режиме можно отображать только несколько первых страниц. Подробнее о ценах.
Пишем читалку электронных книг на Android с помощью FBReader SDK
EPUB, FB2 и MOBI - это самые популярные форматы для распространения электронных книг. Для решения задачи интеграции отображения таких файлов можно воспользоваться FBReader SDK.
Библиотека имеет множество возможностей:
👉 Открытие множество файлов электронных книг
👉 Чтение метаданных из файла книги
👉 Особенности движка FBReader
👉 Возможность менять стиль текста книги и яркость
👉 Выделение текста
👉 Закладки
👉 Поиск по тексту
👉 Оглавление
👉 Дополнительная навигация по тексту
👉 Поддержка сносок и гиперссылок
Библиотека платная. В бесплатном режиме можно отображать только несколько первых страниц. Подробнее о ценах.
#IntelijIDEA #Gradle #Maven
Introducing Package Search EAP
Каким образом вы ищете библиотеки для решения задач в ваших приложения? Для меня пути 3:
👉 Google (90%)
👉 официальные гайды (5%)
👉 рекомендации от знакомых или из докладов (5%)
Использование поисковиков может порой занять больше времени, чем ожидалось, но и самые простые сценарии поиска занимают время на добавление библиотеки.
Чтобы решить эту проблему JetBrains выпустили плагин для IntelijIDEA - Package Search. Он позволяет находить библиотеки и ключевые ссылки к ним: исходный код, обсуждения на StackOverflow и др.
Также есть функционал для автодополнения при добавление зависимостей в Gradle и Maven, а для любителей Kotlin плагин подскажет какую минимальную версию языка требует библиотека и какие платформы поддерживаются, если библиотека мультиплатформенная.
Уже запланировано множество нового функционала на будущим релизы.
Introducing Package Search EAP
Каким образом вы ищете библиотеки для решения задач в ваших приложения? Для меня пути 3:
👉 Google (90%)
👉 официальные гайды (5%)
👉 рекомендации от знакомых или из докладов (5%)
Использование поисковиков может порой занять больше времени, чем ожидалось, но и самые простые сценарии поиска занимают время на добавление библиотеки.
Чтобы решить эту проблему JetBrains выпустили плагин для IntelijIDEA - Package Search. Он позволяет находить библиотеки и ключевые ссылки к ним: исходный код, обсуждения на StackOverflow и др.
Также есть функционал для автодополнения при добавление зависимостей в Gradle и Maven, а для любителей Kotlin плагин подскажет какую минимальную версию языка требует библиотека и какие платформы поддерживаются, если библиотека мультиплатформенная.
Уже запланировано множество нового функционала на будущим релизы.
JetBrains Marketplace
[DEPRECATED] Package Search - IntelliJ IDEs Plugin | Marketplace
Plugin Deprecation Timeline Version for IntelliJ IDEA 2024.3: is the last functional version of the plugin. There will be no version for IntelliJ IDEA 2025.1 or...
#Security #SharedPreference
Encrypted Preferences in Android
Encrypted Preferences in Android
androidx.security
в активной разработке, частью которая являются возможность использования зашифрованных SharedPreference
. В статье разбирается как работать с EncryptedSharedPreferences
и сравнивается производительность с обычными настройками.Medium
Encrypted Preferences in Android
EncryptedSharedPreferences usage and caveats
#DependencyInjection #Dagger
Вышел Dagger 2.25
Вышла новая версия популярного DI фреймворка. В новой версии не произошло значимых изменений были сделаны следующие улучшения:
👉 Поддержка Kotlin: для модулей, которые являются
👉 Исправление багов
👉 Улучшение производительности
Посмотрел историю последних релизов. Dagger уже давно не показывал новых фич и задумался: "Dagger уже стал идеальным либо иссякли идеи у создателей?"
Вышел Dagger 2.25
Вышла новая версия популярного DI фреймворка. В новой версии не произошло значимых изменений были сделаны следующие улучшения:
👉 Поддержка Kotlin: для модулей, которые являются
object
, больше не надо помечать каждый метод как @JvmStatic
и квалификаторы теперь можно добавлять аннотациями на property👉 Исправление багов
👉 Улучшение производительности
Посмотрел историю последних релизов. Dagger уже давно не показывал новых фич и задумался: "Dagger уже стал идеальным либо иссякли идеи у создателей?"
#AndroidDevSummit #AndroidStudio #MotionLayout #JetpackCompose
Прошел Keynote Android Dev Summit 2019. Быстро пройдемся по анонсам:
👉 Android Studio 4.0 Canary 1
👉 Jetpack Compose можно использовать из Android Studio (AS)
👉 Для Jetpack Compose теперь работает предпросмотр (правда нужно компилить код)
👉 Визуальный редактор для анимаций на основе MotionLayout уже можно использовать из новой AS
👉 Поддержка Gradle Kotlin Script в AS
👉 CameraX уже в Beta
👉 Большой обновление библиотек из Jetpack
👉 Сертификация "Associate Android Developer: Kotlin"
Ставлю что стабильный релиз AS 4.0 будет в апреле-мае следующего года, без стабильного Jetpack Compose
Будет больше новостей в ближайшие дни и обзоры обновлений!
Прошел Keynote Android Dev Summit 2019. Быстро пройдемся по анонсам:
👉 Android Studio 4.0 Canary 1
👉 Jetpack Compose можно использовать из Android Studio (AS)
👉 Для Jetpack Compose теперь работает предпросмотр (правда нужно компилить код)
👉 Визуальный редактор для анимаций на основе MotionLayout уже можно использовать из новой AS
👉 Поддержка Gradle Kotlin Script в AS
👉 CameraX уже в Beta
👉 Большой обновление библиотек из Jetpack
👉 Сертификация "Associate Android Developer: Kotlin"
Ставлю что стабильный релиз AS 4.0 будет в апреле-мае следующего года, без стабильного Jetpack Compose
Будет больше новостей в ближайшие дни и обзоры обновлений!
Android Developers
Android Dev Summit | Android Developers
Android Dev Summit 2022
#AndroidDeveloperChallenge
Android Developer Challenge: helpful innovation, powered by On-Device Machine Learning + you!
Google вновь взывает к разработчикам делится идеями, чтобы компания смогла помочь вам сделать их лучше. Первой темой в которой ищут идеи стало машинное обучение на устройстве.
10 лучших разработчиков получат помощь, экспертизу и обучение, фичиринг на Google Play, билет на Google I/0 2020 и пиар
Android Developer Challenge: helpful innovation, powered by On-Device Machine Learning + you!
Google вновь взывает к разработчикам делится идеями, чтобы компания смогла помочь вам сделать их лучше. Первой темой в которой ищут идеи стало машинное обучение на устройстве.
10 лучших разработчиков получат помощь, экспертизу и обучение, фичиринг на Google Play, билет на Google I/0 2020 и пиар
Android Developers Blog
Android Developer Challenge: helpful innovation, powered by On-Device Machine Learning + you!
News and insights on the Android platform, developer tools, and events.
#DontKillMyApp
Победи проблемы на устройстве каждого производителя с помощью сайта Don't kill my app! Больше подробностей ➡️ здесь
Победи проблемы на устройстве каждого производителя с помощью сайта Don't kill my app! Больше подробностей ➡️ здесь
Telegraph
Don't kill my app!
Представьте ситуацию: вы написали приложение, спустя долгие месяцы, его протестировали, все довольны. Вы заливаете его на Google Play. И тут начинаются сыпаться баги, которые вы не можете понять почему происходят. Виной всему вендоры, которые хотят сделать…
#AndroidDevSummit
По итогам Android Dev Summit буду делать обзор:
👉 новинки: Jetpack Compose, Android Studio 4.0, Motion Editor, Kotlin + Android, Android 11, Scoped Storage и пр
👉 высказывать своё мнение
👉 и конечно ванговать о будущем
Буду пробовать новый формат - 📺 видео на канале в YouTube.
Все те кто смог побывать лично на этой конференции - буду рад с вами пообщаться как для сбора материала или для участия в обзоре. Пишите мне в личку @krlrozov
По итогам Android Dev Summit буду делать обзор:
👉 новинки: Jetpack Compose, Android Studio 4.0, Motion Editor, Kotlin + Android, Android 11, Scoped Storage и пр
👉 высказывать своё мнение
👉 и конечно ванговать о будущем
Буду пробовать новый формат - 📺 видео на канале в YouTube.
Все те кто смог побывать лично на этой конференции - буду рад с вами пообщаться как для сбора материала или для участия в обзоре. Пишите мне в личку @krlrozov
#Kotlin #BestPractices
Дмитрий Жемеров — Идиоматичный Kotlin от форматирования до DSL
Насколько полностью вы используете возможности Kotlin? Насколько правильно вы это делаете? Может есть путь, который рекомендуют создатели? Да, он есть в первую очередь это Kotlin Coding Conventions и доклад от Дмитрия Жемерова.
Дмитрий Жемеров - это старожила JetBrains. Он участвовал в разработке многих проектов компании, включая Kotlin. Заглавное фото с маяком - его работа. Соавтор книги «Kotlin in Action».
Дмитрий Жемеров — Идиоматичный Kotlin от форматирования до DSL
Насколько полностью вы используете возможности Kotlin? Насколько правильно вы это делаете? Может есть путь, который рекомендуют создатели? Да, он есть в первую очередь это Kotlin Coding Conventions и доклад от Дмитрия Жемерова.
Дмитрий Жемеров - это старожила JetBrains. Он участвовал в разработке многих проектов компании, включая Kotlin. Заглавное фото с маяком - его работа. Соавтор книги «Kotlin in Action».
YouTube
Дмитрий Жемеров — Идиоматичный Kotlin от форматирования до DSL
Ближайшая конференция — JPoint 2025, 3–4 апреля (Москва + трансляция).
Подробности и билеты: https://jrg.su/T2zfbS
— —
. . . . Начать пользоваться Kotlin несложно — он похож на Java, и ваш существующий опыт легко позволит вам начать программировать в стиле…
Подробности и билеты: https://jrg.su/T2zfbS
— —
. . . . Начать пользоваться Kotlin несложно — он похож на Java, и ваш существующий опыт легко позволит вам начать программировать в стиле…
#DependencyInjection #Dagger #Jetpack
Появилось официальное руководство по Dependency Injection в Android, а также важные новости:
👉 Dagger - официальная рекомендация как DI для Android приложения
👉 Используйте Dagger для больших приложений (8+ экранов)
👉 В Google работают над сокращение кода для работы с Dagger
Больше подробностей читайте в статье
Появилось официальное руководство по Dependency Injection в Android, а также важные новости:
👉 Dagger - официальная рекомендация как DI для Android приложения
👉 Используйте Dagger для больших приложений (8+ экранов)
👉 В Google работают над сокращение кода для работы с Dagger
Больше подробностей читайте в статье
Telegraph
Официальное руководство по Dependency Injection в Android
Официальное руководство по Dependency Injection появилось на developers.android.com. В рамках руководства рассматривается: Что такое DI Альтернативы DI Dependency injection своими руками Dagger 2 Многомодульность c Dagger 2 Лучшие практики Если раньше Dagger…
#R8 #ProGuard
Comparison of ProGuard vs. R8: October 2019 edition
Proguard уходит из Android. Уже начиная с Android Gradle Plugin 3.4.0 по умолчанию используется R8. Смогла ли Google сделать продукт лучше? Однозначно сказать нельзя. Что-то лучше в R8, что-то в ProGuard, а что-то ProGuard уже скопировал у R8 😁
Разработчики ProGuard уже проводили сравнение, но решили это сделать повторно т.к. R8 развивается быстро. Новое сравнение предназначено для продвижение, но позволяет понять отдельные детали.
Comparison of ProGuard vs. R8: October 2019 edition
Proguard уходит из Android. Уже начиная с Android Gradle Plugin 3.4.0 по умолчанию используется R8. Смогла ли Google сделать продукт лучше? Однозначно сказать нельзя. Что-то лучше в R8, что-то в ProGuard, а что-то ProGuard уже скопировал у R8 😁
Разработчики ProGuard уже проводили сравнение, но решили это сделать повторно т.к. R8 развивается быстро. Новое сравнение предназначено для продвижение, но позволяет понять отдельные детали.
Guardsquare
Comparison of ProGuard vs. R8 | Guardsquare
This comparison of ProGuard vs. R8 gives a detailed, technical look at these popular Android optimizer tools for app developers. Read on to learn more.