Релиз Kotlin 1.5.20
Что нового:
— конкатенация строк через
— экспериментальная поддержка JSpecify-аннотаций для контроля nullability;
— экспериментальная поддержка методов, сгенерированных Lombok.
Подробнее в блоге Kotlin: https://tprg.ru/WMib
Также JetBrains сделала наглядный ролик, рассказывающий об изменениях: https://youtu.be/SV8CgSXQe44
#kotlin
Что нового:
— конкатенация строк через
invokedynamic;— экспериментальная поддержка JSpecify-аннотаций для контроля nullability;
— экспериментальная поддержка методов, сгенерированных Lombok.
Подробнее в блоге Kotlin: https://tprg.ru/WMib
Также JetBrains сделала наглядный ролик, рассказывающий об изменениях: https://youtu.be/SV8CgSXQe44
#kotlin
YouTube
What's New in Kotlin 1.5.20
Kotlin 1.5.20 comes with various improvements for Kotlin/JVM, Kotlin/Native, Kotlin/JS, and the standard library. In this video, Anton Arhipov highlights features of this release.
0:41 String concatenation via invokedynamic
2:00 Support for JSpecify nullness…
0:41 String concatenation via invokedynamic
2:00 Support for JSpecify nullness…
На Windows 11 можно будет запустить Android-приложения без сторонних эмуляторов
На этой неделе Microsoft показала свою следующую ОС — Windows 11. Одним из ключевых нововведений системы стала поддержка Android-приложений. Да, они будут работать как обычные программы.
Такое стало возможно благодаря технологии Intel Bridge. Она в реальном времени переводит приложения, скомпилированные для других платформ, в инструкции x86. Принцип работы напоминает проект Rosetta от Apple, но наоборот — там x86-инструкции транслируются в ARM.
Android-приложения можно будет запустить на процессорах Intel и AMD. А распространяться они будут через Amazon Appstore и Microsoft Store.
#android
На этой неделе Microsoft показала свою следующую ОС — Windows 11. Одним из ключевых нововведений системы стала поддержка Android-приложений. Да, они будут работать как обычные программы.
Такое стало возможно благодаря технологии Intel Bridge. Она в реальном времени переводит приложения, скомпилированные для других платформ, в инструкции x86. Принцип работы напоминает проект Rosetta от Apple, но наоборот — там x86-инструкции транслируются в ARM.
Android-приложения можно будет запустить на процессорах Intel и AMD. А распространяться они будут через Amazon Appstore и Microsoft Store.
#android
В курсе Android Basics появился новый раздел
Android Basics in Kotlin — это официальный курс по Android-разработке для новичков.
В июне курс обновили, и в нём появился юнит по хранению данных. В разделе знакомят с основами SQL и библиотекой Room, которая помогает управлять базами данных:
https://developer.android.com/courses/android-basics-kotlin/unit-5
#android #native #начинающим
Android Basics in Kotlin — это официальный курс по Android-разработке для новичков.
В июне курс обновили, и в нём появился юнит по хранению данных. В разделе знакомят с основами SQL и библиотекой Room, которая помогает управлять базами данных:
https://developer.android.com/courses/android-basics-kotlin/unit-5
#android #native #начинающим
Библиотека для создания красивых онбордингов
Онбординг — это экран, который видит пользователь при первом запуске приложения. Стартовый экран рассказывает о ключевых возможностях приложения и должен зацепить пользователя.
Библиотека поможет сделать красивые анимации, индикаторы и переходы:
https://github.com/Mindinventory/Walk-Through-Screen
#android #библиотеки #native
Онбординг — это экран, который видит пользователь при первом запуске приложения. Стартовый экран рассказывает о ключевых возможностях приложения и должен зацепить пользователя.
Библиотека поможет сделать красивые анимации, индикаторы и переходы:
https://github.com/Mindinventory/Walk-Through-Screen
#android #библиотеки #native
Память в Swift от 0 до 1
Знаете ли вы, как язык Swift работает с памятью?
В статье рассказано:
— как байты в памяти размещаются в Swift;
— как Swift управляет памятью;
— как выглядит жизненный цикл объектов:
https://tprg.ru/jSys
#swift #ios
Знаете ли вы, как язык Swift работает с памятью?
В статье рассказано:
— как байты в памяти размещаются в Swift;
— как Swift управляет памятью;
— как выглядит жизненный цикл объектов:
https://tprg.ru/jSys
#swift #ios
Реализуем сквирклморфизм
Недавно мы разбирали, что такое сквирклморфизм. Его принципы реализованы в библиотеке SquircleView. С её помощью вы можете создавать View в форме сквиркла.
Репозиторий: https://github.com/Juky-App/SquircleView
#android #библиотеки
Недавно мы разбирали, что такое сквирклморфизм. Его принципы реализованы в библиотеке SquircleView. С её помощью вы можете создавать View в форме сквиркла.
Репозиторий: https://github.com/Juky-App/SquircleView
#android #библиотеки
Управляем микроконтроллером с Android-смартфона
Концепция «умного дома» — уже не фантастика. С Android-устройства можно, например, считывать температуру и управлять светодиодами с микроконтроллера ESP8266. И всё это через Wi-Fi.
Вот как это можно реализовать:
https://youtu.be/BmEqc8nOqWM
#android #native
Концепция «умного дома» — уже не фантастика. С Android-устройства можно, например, считывать температуру и управлять светодиодами с микроконтроллера ESP8266. И всё это через Wi-Fi.
Вот как это можно реализовать:
https://youtu.be/BmEqc8nOqWM
#android #native
YouTube
Простое Android приложение для контроля ESP8266 по WiFI на Android Studio
Создаем Простое Android приложение для контроля ESP8266 по WiFI на Android Studio.
Подключаем сенсор температуры DS18B20 и 3 светодиода.
Весь код урока: https://neco-desarrollo.es/android-arduino-esp32
★ ★ ★ ★ ★ ★ ▼Продвинутые уроки для спонсоров канала…
Подключаем сенсор температуры DS18B20 и 3 светодиода.
Весь код урока: https://neco-desarrollo.es/android-arduino-esp32
★ ★ ★ ★ ★ ★ ▼Продвинутые уроки для спонсоров канала…
С августа новые Android-приложения должны перейти на формат Android App Bundle
Иначе их не пропустят в Google Play.
Формат Android App Bundle (AAB) пришёл на замену Android Package (APK). Внутри него приложение делится на специальные модули, и пользователь загружает приложение только с необходимыми для устройства пакетами.
Благодаря этому разработчики могут более свободно работать с лимитом на размер установочного файла приложения — 150 МБ.
Если вы уже упаковывали приложение в оптимизированный APK, то переход на AAB пройдёт гладко: достаточно пересобрать приложение в новый формат в Android Studio или через командную строку.
Подробнее об Android App Bundle и как собрать приложение: https://developer.android.com/guide/app-bundle
#android #native
Иначе их не пропустят в Google Play.
Формат Android App Bundle (AAB) пришёл на замену Android Package (APK). Внутри него приложение делится на специальные модули, и пользователь загружает приложение только с необходимыми для устройства пакетами.
Благодаря этому разработчики могут более свободно работать с лимитом на размер установочного файла приложения — 150 МБ.
Если вы уже упаковывали приложение в оптимизированный APK, то переход на AAB пройдёт гладко: достаточно пересобрать приложение в новый формат в Android Studio или через командную строку.
Подробнее об Android App Bundle и как собрать приложение: https://developer.android.com/guide/app-bundle
#android #native
Как в View Model избавиться от наследования ViewModel
Обычно в проекте отвязки от ViewModel не требуется. Но если вы реализуете приложение на Kotlin Mutliplatform (KMM), то необходимо написать код так, чтобы он работал на разных платформах и не зависел от Android.
В статье подробно разобрана эта проблема:
https://tprg.ru/BYDu
#android #native
Обычно в проекте отвязки от ViewModel не требуется. Но если вы реализуете приложение на Kotlin Mutliplatform (KMM), то необходимо написать код так, чтобы он работал на разных платформах и не зависел от Android.
В статье подробно разобрана эта проблема:
https://tprg.ru/BYDu
#android #native
This media is not supported in your browser
VIEW IN TELEGRAM
Реализуем эффект размытия на Flutter
Если вам нужно «заблюрить» экран Flutter-приложения, например, при выскакивании уведомления, то в этом может помочь виджет BackdropFilter. Он применяет нужный фильтр как к нужному виджету, так и ко всему экрану.
В статье рассказано, как достичь эффекта размытия с помощью BackdropFilter:
https://tprg.ru/1mDn
#flutter
Если вам нужно «заблюрить» экран Flutter-приложения, например, при выскакивании уведомления, то в этом может помочь виджет BackdropFilter. Он применяет нужный фильтр как к нужному виджету, так и ко всему экрану.
В статье рассказано, как достичь эффекта размытия с помощью BackdropFilter:
https://tprg.ru/1mDn
#flutter
Вышла первая Release Candidate-версия Jetpack Compose
Новых функций в Compose-библиотеках нет. Но сам факт перехода Jetpack Compose в ветку RC уже говорит о том, что релиз не за горами. Вот полные списки всех изменений.
Вместе с Compose обновления получили и другие Jetpack-библиотеки:
— Navigation 2.4.0-alpha04 получила встроенную поддержку двухпанельных layout с помощью
— Paging 3.1.0-alpha02 теперь может слушать, когда происходит обновление страниц.
#android #jetpack
Новых функций в Compose-библиотеках нет. Но сам факт перехода Jetpack Compose в ветку RC уже говорит о том, что релиз не за горами. Вот полные списки всех изменений.
Вместе с Compose обновления получили и другие Jetpack-библиотеки:
— Navigation 2.4.0-alpha04 получила встроенную поддержку двухпанельных layout с помощью
AbstractListDetailFragment;— Paging 3.1.0-alpha02 теперь может слушать, когда происходит обновление страниц.
#android #jetpack
Как работать с API StoreKit 2
Storekit — это фреймворк от Apple, который позволяет встроить покупки прямо в iOS-приложение. В июне фреймворк получил обновление до второй версии.
В статье рассматривается работа с StoreKit 2 со стороны сервера через App Store Server API:
https://tprg.ru/vu91
#ios
Storekit — это фреймворк от Apple, который позволяет встроить покупки прямо в iOS-приложение. В июне фреймворк получил обновление до второй версии.
В статье рассматривается работа с StoreKit 2 со стороны сервера через App Store Server API:
https://tprg.ru/vu91
#ios
Поддержка настольного режима для складных Android-устройств
Хоть складных устройств на рынке довольно мало, но они обладают уникальными фишками. В их число входит настольный режим (tabletop mode), когда верхняя часть экрана приподнимается.
К счастью, на Android есть инструменты, которые позволяют определить, в каком положении находится устройство, и адаптировать под него приложении.
В статье объясняется, как реализовать поддержку настольного режима на примере простого видеоплеера:
https://tprg.ru/jXFk
#android
Кстати, так выглядит Google Duo до и после оптимизации под складные устройства:
Хоть складных устройств на рынке довольно мало, но они обладают уникальными фишками. В их число входит настольный режим (tabletop mode), когда верхняя часть экрана приподнимается.
К счастью, на Android есть инструменты, которые позволяют определить, в каком положении находится устройство, и адаптировать под него приложении.
В статье объясняется, как реализовать поддержку настольного режима на примере простого видеоплеера:
https://tprg.ru/jXFk
#android
Кстати, так выглядит Google Duo до и после оптимизации под складные устройства:
This media is not supported in your browser
VIEW IN TELEGRAM
Интеграция Huawei Mobile Services в Android-приложение
Huawei — один из лидеров на рынке мобильных смартфонов. Но на относительно новых смартфонах от Huawei вместо сервисов Google встроены Huawei Mobile Services (HMS) и свой магазин приложений AppGallery.
Если вы хотите опубликовать приложение в AppGallery, то в видео показывается, как интегрировать HMS:
https://youtu.be/LQAgkxfu7M4
#android
Huawei — один из лидеров на рынке мобильных смартфонов. Но на относительно новых смартфонах от Huawei вместо сервисов Google встроены Huawei Mobile Services (HMS) и свой магазин приложений AppGallery.
Если вы хотите опубликовать приложение в AppGallery, то в видео показывается, как интегрировать HMS:
https://youtu.be/LQAgkxfu7M4
#android
YouTube
Интеграция Huawei Mobile Services (HMS)
Вы узнаете с чего начать интеграцию Huawei Mobile Services (HMS) и публикацию вашего приложения в Huawei AppGallery
💰 Поддержать проект на Boosty https://bit.ly/3sratqQ или Patreon https://patreon.com/android_broadcast
🔗 Telegram канал "Android Broadcast"…
💰 Поддержать проект на Boosty https://bit.ly/3sratqQ или Patreon https://patreon.com/android_broadcast
🔗 Telegram канал "Android Broadcast"…
Переход новых приложений на формат Android App Bundle
С 1 августа все новые Android-приложения должны загружаться в Google Play в формате Android App Bundle (AAB). Новый формат обещает уменьшить размер пакетов для конечных пользователей. Однако его внедрение может повлечь потенциальные проблемы:
— привязка к Google Play. Приложение будет теснее завязано на сервисах Google, и поэтому для альтернативных платформ (например, AppGallery) понадобится делать свою версию приложения;
— Google сама будет подписывать приложения, поскольку нужные для пользователя APK-файлы генерируются автоматически. Поэтому APK-файл от разработчика и версия из Google Play могут быть несовместимы из-за разных подписей.
Используете ли вы формат Android App Bundle? Действительно ли он хорош и удобен для разработчика?
#чат
С 1 августа все новые Android-приложения должны загружаться в Google Play в формате Android App Bundle (AAB). Новый формат обещает уменьшить размер пакетов для конечных пользователей. Однако его внедрение может повлечь потенциальные проблемы:
— привязка к Google Play. Приложение будет теснее завязано на сервисах Google, и поэтому для альтернативных платформ (например, AppGallery) понадобится делать свою версию приложения;
— Google сама будет подписывать приложения, поскольку нужные для пользователя APK-файлы генерируются автоматически. Поэтому APK-файл от разработчика и версия из Google Play могут быть несовместимы из-за разных подписей.
Используете ли вы формат Android App Bundle? Действительно ли он хорош и удобен для разработчика?
#чат
Библиотека для визуализации сложности пароля
Имеет 6 градаций сложности. Написана на Java.
Код: https://github.com/RHSaliya/PasswordStrengthView
#android #ui
Имеет 6 градаций сложности. Написана на Java.
Код: https://github.com/RHSaliya/PasswordStrengthView
#android #ui
Корутины в Android
Корутины — это «фишка» Kotlin. С их помощью вы можете написать асинхронный код.
В Android корутины не только нативно поддерживаются, но и часто используются для обеспечения многопоточности приложения.
Статья объяснит, как использовать корутины: https://tprg.ru/rShZ
#android #начинающим
Корутины — это «фишка» Kotlin. С их помощью вы можете написать асинхронный код.
В Android корутины не только нативно поддерживаются, но и часто используются для обеспечения многопоточности приложения.
Статья объяснит, как использовать корутины: https://tprg.ru/rShZ
#android #начинающим
Судоку на Kotlin Multiplatform и Jetpack Compose
Приложение представляет собой хороший пример того, как сделать для разных платформ общим код: данные, бизнес-логику, представление, навигацию и UI.
Код проекта: https://github.com/aaronoe/ComposeArcade
#android #jetpack
Приложение представляет собой хороший пример того, как сделать для разных платформ общим код: данные, бизнес-логику, представление, навигацию и UI.
Код проекта: https://github.com/aaronoe/ComposeArcade
#android #jetpack
Как определить, находится ли курсор мыши на виджете
Для этого в Flutter есть виджет
Где может пригодиться? Для создания десктопных приложений на Flutter или для поддержки Android-планшетов с возможностью использования мыши.
Подробнее о
#flutter #библиотеки
Для этого в Flutter есть виджет
MouseRegion. Он помогает определить координаты курсора и отследить выход из исследуемой области.Где может пригодиться? Для создания десктопных приложений на Flutter или для поддержки Android-планшетов с возможностью использования мыши.
Подробнее о
MouseRegion в документации: https://tprg.ru/0Agy#flutter #библиотеки
YouTube
MouseRegion (Flutter Widget of the Week)
Learn more about MouseRegion → https://goo.gle/MouseRegion
Have you ever wondered how to detect if a mouse is over a widget? Wrap your widget with MouseRegion to detect when a mouse enters, exits, or hovers over it. You can even change what the cursor looks…
Have you ever wondered how to detect if a mouse is over a widget? Wrap your widget with MouseRegion to detect when a mouse enters, exits, or hovers over it. You can even change what the cursor looks…
Рекламодатели стали меньше тратить на iOS, но больше на Android
В апреле вышла iOS 14.5 с внедрённым фреймворком App Tracking Transparency. С этого момента разработчики обязаны спрашивать разрешение на отслеживание пользовательской активности.
Ожидаемо, что со сбором данных согласилось менее трети пользователей. В результате рекламодатели переключились на Android, и реклама на Android стала стоить в среднем на 30% дороже, чем на iOS.
Пришли золотые времена Android-разработчиков?
#android #ios
В апреле вышла iOS 14.5 с внедрённым фреймворком App Tracking Transparency. С этого момента разработчики обязаны спрашивать разрешение на отслеживание пользовательской активности.
Ожидаемо, что со сбором данных согласилось менее трети пользователей. В результате рекламодатели переключились на Android, и реклама на Android стала стоить в среднем на 30% дороже, чем на iOS.
Пришли золотые времена Android-разработчиков?
#android #ios