Избегаем поддельных шрифтов в Android
При разработке под Android есть возможность создавать собственные семейства шрифтов, путем объединения отдельных шрифтов. Все бы было ничего, если бы сам фреймворк не решался дорисовать за нас отсутствующие шрифты из семейства.
Как этого избежать и как правильно получать необходимый шрифт в коде/XML вы найдете в статье.
При разработке под Android есть возможность создавать собственные семейства шрифтов, путем объединения отдельных шрифтов. Все бы было ничего, если бы сам фреймворк не решался дорисовать за нас отсутствующие шрифты из семейства.
Как этого избежать и как правильно получать необходимый шрифт в коде/XML вы найдете в статье.
#HMS #ML #AI
Снятся ли телефонам с HMS электроовцы? Обзор функций и возможностей инструментов AI от Huawei
Разбор возможностей ML Kit от Huawei, который является частью HMS. В состав этого инструмента входит:
👉 Распознание текста
👉 Распознание речи: диктовка, транскрипция аудиофайлов, TTS, переводы, создание интерактивных обучающих роликов
👉 Работа с изображениями: классификация, обнаружение и отслеживание объектов, распознание, улучшение разрешения и качества и др.
👉 Распознание лица и позы человека
Все возможность работают как онлайн, так и оффлайн, но в более урезанном формате. В отличие от ML Kit от Google, Huawei больше уделяет внимания русскому языку.
Также не стоит забывать, что устройства Huawei имеет свои чипы Kirin с высокопроизводительным NPU, который позволит ускорить весь этот процессинг в разы.
Помимо всего возможна работа с собственными моделями, есть расширенные возможности для приложений с AI и много других интересных сервисов от Huawei.
Снятся ли телефонам с HMS электроовцы? Обзор функций и возможностей инструментов AI от Huawei
Разбор возможностей ML Kit от Huawei, который является частью HMS. В состав этого инструмента входит:
👉 Распознание текста
👉 Распознание речи: диктовка, транскрипция аудиофайлов, TTS, переводы, создание интерактивных обучающих роликов
👉 Работа с изображениями: классификация, обнаружение и отслеживание объектов, распознание, улучшение разрешения и качества и др.
👉 Распознание лица и позы человека
Все возможность работают как онлайн, так и оффлайн, но в более урезанном формате. В отличие от ML Kit от Google, Huawei больше уделяет внимания русскому языку.
Также не стоит забывать, что устройства Huawei имеет свои чипы Kirin с высокопроизводительным NPU, который позволит ускорить весь этот процессинг в разы.
Помимо всего возможна работа с собственными моделями, есть расширенные возможности для приложений с AI и много других интересных сервисов от Huawei.
#AndroidStudio
Магическая шаблонизация для Android-проектов
Иметь шаблон для создания проекта или его частей в UI Android Studio позволяет сокращать время на разработку, убирая необходимость писать однообразный код.
До Android Studio 4.1 можно было использовать FreeMarker шаблоны, но теперь так больше сделать нельзя. В HeadHunter решили исправить эту ситуацию и разработали плагин Geminio
В статье автор делиться тем как работает новый механизм, какие есть альтернативы и как все это улучшает Geminio
Магическая шаблонизация для Android-проектов
Иметь шаблон для создания проекта или его частей в UI Android Studio позволяет сокращать время на разработку, убирая необходимость писать однообразный код.
До Android Studio 4.1 можно было использовать FreeMarker шаблоны, но теперь так больше сделать нельзя. В HeadHunter решили исправить эту ситуацию и разработали плагин Geminio
В статье автор делиться тем как работает новый механизм, какие есть альтернативы и как все это улучшает Geminio
#Performance #Testing
Testing App Startup Performance
Сделать быстрый старт вашего приложения (как холодный, так и горячий). Чтобы делать это, надо понять как правильно его замерять, что и разбирается в статье в виде разных трюков с adb, API и немного библиотеки AndroidX Performance
Testing App Startup Performance
Сделать быстрый старт вашего приложения (как холодный, так и горячий). Чтобы делать это, надо понять как правильно его замерять, что и разбирается в статье в виде разных трюков с adb, API и немного библиотеки AndroidX Performance
#UI
AsyncLayoutInflater
Проблема заключается в том, что не все API в Android готово к асинхронному рендерингу, например
AsyncLayoutInflater
AsyncLayoutInflater
- это возможность инфлейтить Layout XML асинхронно, что может использоваться для ускорения работы вашего приложения и разгрузки Main/UI потока вашего приложения.Проблема заключается в том, что не все API в Android готово к асинхронному рендерингу, например
Fragment
, который требует вернуть View как результат выполнения onCreateView()
#IDEA
Keep Shortcuts close, but Quick Lists and Favorites closer
Быстрая навигация и выполнение действий - одна из ключевых функций, которая отличает качественную IDE от простого текстового редактора. В статье разбираются Quick List (собственные списки действий) и Избранное (файлы, папки и пакеты, которые будут доступны быстрее)
Keep Shortcuts close, but Quick Lists and Favorites closer
Быстрая навигация и выполнение действий - одна из ключевых функций, которая отличает качественную IDE от простого текстового редактора. В статье разбираются Quick List (собственные списки действий) и Избранное (файлы, папки и пакеты, которые будут доступны быстрее)
Записи докладов с конференции Android Summit 2020
На конференции есть доклады про Kotlin Coroutines, тестирование, безопасности, Kotlin Multiplatform, UI, анимациям и др.
На конференции есть доклады про Kotlin Coroutines, тестирование, безопасности, Kotlin Multiplatform, UI, анимациям и др.
#Performance
Decrease memory usage of your Android app in half
История разработчиков, которые столкнулись с необходимостью уменьшим расход RAM c 150 Мб до 70. Автор статьи делиться советами:
👉 Включение LeakCanary и проверить утечки памяти
👉 Изменение режима кодировки для Glide по умолчанию на
👉 Используйте
👉 Отменяйте загрузки, когда скрываются элементы в
👉 Проблема с повторным обновлением данных в
👉 Утечки
👉 Не увлекайтесь Singleton в Dagger и object в Kotlin. Оцените насколько нужно вам постоянное хранение объекта в памяти. Обычно это нужно только для объектов, у которых нужно глобальное состояние.
Важно: Чистка памяти и создание объекта в Android -дешевые операции
Decrease memory usage of your Android app in half
История разработчиков, которые столкнулись с необходимостью уменьшим расход RAM c 150 Мб до 70. Автор статьи делиться советами:
👉 Включение LeakCanary и проверить утечки памяти
👉 Изменение режима кодировки для Glide по умолчанию на
RGB_565
. Стандартный режим ARGB_8888
👉 Используйте
Application.onTrimMemory()
, чтобы расчищать память при ее нехватке👉 Отменяйте загрузки, когда скрываются элементы в
RecyclerView
👉 Проблема с повторным обновлением данных в
Room
, исправляется банальной проверкой на уникальность данных👉 Утечки
Fragment
из-за хранения ссылки на ViewBinding
. Не забывайте чистить ссылки, связанные с UI, и отменять подписки/слушатели в Fragment.onDestroyView()
👉 Не увлекайтесь Singleton в Dagger и object в Kotlin. Оцените насколько нужно вам постоянное хранение объекта в памяти. Обычно это нужно только для объектов, у которых нужно глобальное состояние.
Важно: Чистка памяти и создание объекта в Android -дешевые операции
#Performance
Android Vitals - Profiling App Startup
Инструкция по профилированию запуска Android приложений:
👉 Как настроить устройство и сборку
👉 Когда запускать и останавливать запись
👉 Профилирование с Nanoscope
Android Vitals - Profiling App Startup
Инструкция по профилированию запуска Android приложений:
👉 Как настроить устройство и сборку
👉 Когда запускать и останавливать запись
👉 Профилирование с Nanoscope
AndroidX Activity Result APIs — Taking a Picture
Разбор нового способа получения результата вместо
Разбор нового способа получения результата вместо
onActivityResult()
- Activity Result API. Автор разбирает пример получения разрешений и создание фото#Стажировка
Стажировка для мобильных разработчиков в Redmadrobot
Redmadrobot открывает оплачиваемую стажировку для начинающих iOS- и Android-разработчиков в марте 2021 года, которая пройдёт в самарском офисе. Поможем раскрыть внутреннюю силу джедая и поделимся 11-летним опытом разработки мобильных приложений.
Стажировка для мобильных разработчиков в Redmadrobot
Redmadrobot открывает оплачиваемую стажировку для начинающих iOS- и Android-разработчиков в марте 2021 года, которая пройдёт в самарском офисе. Поможем раскрыть внутреннюю силу джедая и поделимся 11-летним опытом разработки мобильных приложений.
#HMS #Camera
Работа с камерой на платформе HMS
Google имеет расширенные возможности по работе с камерой - Jetpack CameraX. Huawei, отлученная от технологий Google и обновлений Android, сделал свой API для разработчиков, которые позволяют задействовать весь потенциал камеры - Camera Engine
В статье разбирается
👉 как начать работать с Camera Engine
👉 сделать ночную съемку
👉 сделать фото с эффектом Боке
👉 HDR
👉 Slow-mo
👉 Pro режим
👉 снять видео
Работа с камерой на платформе HMS
Google имеет расширенные возможности по работе с камерой - Jetpack CameraX. Huawei, отлученная от технологий Google и обновлений Android, сделал свой API для разработчиков, которые позволяют задействовать весь потенциал камеры - Camera Engine
В статье разбирается
👉 как начать работать с Camera Engine
👉 сделать ночную съемку
👉 сделать фото с эффектом Боке
👉 HDR
👉 Slow-mo
👉 Pro режим
👉 снять видео
#AndroidStudio
Announcing Android Studio Arctic Fox (2020.3.1) & Android Gradle plugin 7.0
Android Studio (AS) и Android Gradle Plugin (AGP) меняют версионирование. Вместо версии 4.3 нас ждут AS 2020.3.1 и AGP 7.0.0.
Теперь версия AS совпадает с версией IntelliJ, на которой базируется IDE от Google. Версия AGP будет совпадать с версией Gradle, которая требуется для работы
Помимо прочего у каждой версии Android Studio появится новое кодовое имя. У следующей оно будет Arctic Fox.
Announcing Android Studio Arctic Fox (2020.3.1) & Android Gradle plugin 7.0
Android Studio (AS) и Android Gradle Plugin (AGP) меняют версионирование. Вместо версии 4.3 нас ждут AS 2020.3.1 и AGP 7.0.0.
Теперь версия AS совпадает с версией IntelliJ, на которой базируется IDE от Google. Версия AGP будет совпадать с версией Gradle, которая требуется для работы
Помимо прочего у каждой версии Android Studio появится новое кодовое имя. У следующей оно будет Arctic Fox.
#Gradle
AGP 7.0: Next major release for the Android Gradle plugin
Следующий Android Gradle Plugin показал свою первую альфу. Из новинок нас ждет:
👉 Новая схема версионирования, следующая принципам семантического версионирования
👉 Обратная совместимость в API и deprecation циклы
👉 Java 11 теперь минимальная версия для работы AGP
👉 Изменения в API по сравнению с AGP 4.2
👉 Новое API
AGP 7.0: Next major release for the Android Gradle plugin
Следующий Android Gradle Plugin показал свою первую альфу. Из новинок нас ждет:
👉 Новая схема версионирования, следующая принципам семантического версионирования
👉 Обратная совместимость в API и deprecation циклы
👉 Java 11 теперь минимальная версия для работы AGP
👉 Изменения в API по сравнению с AGP 4.2
👉 Новое API
androidComponents
#AndroidBroadcast
Стартуем обсуждение того, как правильно просить повышение ЗП и какие пути для этого есть.
Запись будет доступна сразу на YouTube
Стартуем обсуждение того, как правильно просить повышение ЗП и какие пути для этого есть.
Запись будет доступна сразу на YouTube
YouTube
Как повысить ЗП
#AndroidBroadcast
Советы по повышению ЗП в IT: как правильно сделать, обязательно ли менять работу, KPI и прочие вопросы не останутся без ответа
Гости выпуска:
- Денис Неклюдов, Staff Software Engineer в Lyft. Хотел создать свой тик ток хаус с блэкджеком…
Советы по повышению ЗП в IT: как правильно сделать, обязательно ли менять работу, KPI и прочие вопросы не останутся без ответа
Гости выпуска:
- Денис Неклюдов, Staff Software Engineer в Lyft. Хотел создать свой тик ток хаус с блэкджеком…
#Webinar #Kotlin #Kafka
Apache Kafka® Event Streaming Platform For Kotlin Developers
10 декабря в 19.30 (GMT+ 3). Язык - английский
10 декабря JetBrains организует вебинар, посвященный использованию Kafka в серверных приложениях на Kotlin.
Вебинар будет интересен разработчикам, которые уже использую Kotlin для серверных приложений, а также тем, кто только планирует начать. Написать сервер для своего приложения, и расширить применение Kotlin за пределы Android будут очень полезным навыком!
Ведущие:
😎 Антон Архипов, Dev Advocate в JetBrains
😎 Виктор Гамов, Dev Advocate в Confluent
Чтобы получить уведомление за день до вебинара и приглашение для вашего календаря зарегистрируйтесь по ссылке
Apache Kafka® Event Streaming Platform For Kotlin Developers
10 декабря в 19.30 (GMT+ 3). Язык - английский
10 декабря JetBrains организует вебинар, посвященный использованию Kafka в серверных приложениях на Kotlin.
Вебинар будет интересен разработчикам, которые уже использую Kotlin для серверных приложений, а также тем, кто только планирует начать. Написать сервер для своего приложения, и расширить применение Kotlin за пределы Android будут очень полезным навыком!
Ведущие:
😎 Антон Архипов, Dev Advocate в JetBrains
😎 Виктор Гамов, Dev Advocate в Confluent
Чтобы получить уведомление за день до вебинара и приглашение для вашего календаря зарегистрируйтесь по ссылке
Forwarded from Kotlin Multiplatform Broadcast
#KMP
Okio's Kotlin Multiplatform Files API
Авторы библиотеки Okio (OkHttp, Retrofit и др.) активно работают над реализацией мультиплатформенного API для работы с файлами и потоками. Сделано уже много чего, ждем полноценного релиза библиотеки в KMP варианте
Okio's Kotlin Multiplatform Files API
Авторы библиотеки Okio (OkHttp, Retrofit и др.) активно работают над реализацией мультиплатформенного API для работы с файлами и потоками. Сделано уже много чего, ждем полноценного релиза библиотеки в KMP варианте
#Jetpack
Обновление Android Jetpack 2 декабря 2020
Browser 1.3.0
👉 Улучшения Trusted Web Activity API с помощью возможности отправки команд
👉 Возможность управлять показом опции шаринга
👉 Больше возможностей по управлению цветом Custom Tab
Wear Input 1.0.0
👉 Возможность обработки физических клавиш из Jetpack библиотеки
👉 API для тестирования работы с кнопками
Navigation 2.3.2
👉 Safe Args API теперь совместимо с Kotlin explicit API mode
👉 Испралвение багов
Biometric 1.2.0-alpha01
👉 Kotlin расширения для biometric -
👉 AuthPrompt API для построения
Exifinterface 1.3.2
👉 Исправление багов
Что еще:
👉 Произошли важные фиксы в Activity Result API
👉
👉 RecyclerView 1.2.0-beta01 не принес изменений с альфы, что говорит о уже неплохой стабильности
👉 Множество beta и rc релизов
Обновление Android Jetpack 2 декабря 2020
Browser 1.3.0
👉 Улучшения Trusted Web Activity API с помощью возможности отправки команд
👉 Возможность управлять показом опции шаринга
👉 Больше возможностей по управлению цветом Custom Tab
Wear Input 1.0.0
👉 Возможность обработки физических клавиш из Jetpack библиотеки
👉 API для тестирования работы с кнопками
Navigation 2.3.2
👉 Safe Args API теперь совместимо с Kotlin explicit API mode
👉 Испралвение багов
Biometric 1.2.0-alpha01
👉 Kotlin расширения для biometric -
biometric-ktx
👉 AuthPrompt API для построения
BiometricPrompt
при выполнение авторизацииExifinterface 1.3.2
👉 Исправление багов
Что еще:
👉 Произошли важные фиксы в Activity Result API
👉
FragmentScenario
переезжает полностью на Kotlin👉 RecyclerView 1.2.0-beta01 не принес изменений с альфы, что говорит о уже неплохой стабильности
👉 Множество beta и rc релизов
#UI
Simple Settings Activity
Библиотека для создания экранов настроек на основе стандартного фреймворка. Библиотека имеет удобный DSL на основе Kotlin для создания экрана настроек в runtime
Simple Settings Activity
Библиотека для создания экранов настроек на основе стандартного фреймворка. Библиотека имеет удобный DSL на основе Kotlin для создания экрана настроек в runtime