Дайджест мобильной разработки за сентябрь

57b0f802deb2b34da3b6d1b49a155526.png

Новый Kotlin версии 1.9.20-Beta2, разработка библиотеки Jetpack Paging 3.3.0, Yandex Mobile Ads SDK 6, Java 21 LTS, Remote Config в RuStore — и другие важные новости рынка мобильной разработки в сентябре 2023 года.

Разработка

Android 14

В Android 14 появилась новая система масштабирования текста в соответствии с Web Content Accessibility Guidelines (WCAG). Теперь будет применяться нелинейная шкала масштабирования.

Android 15

В Android 15 откроют доступ к данным о состоянии батареи. Google разрешит сторонним приложениям считывать оставшуюся расчётную ёмкость заряда по отношению к номинальной ёмкости.

Сейчас этот показатель нельзя запросить через Android SDK. Хотя возможность оценить состояние батареи всё-таки есть — соответствующий API с некоторыми ограничениями был представлен в Android 14.

KotlinX IO 0.3.0

Вышел KotlinX IO 0.3.0. В сентябрьском релизе:

— поддержка Wasm;
— улучшения API;
— исправление багов;
— Kotlin 1.9.10.

Новый Kotlin версии 1.9.20-Beta2

Вышедшая версия Kotlin 1.9.20-Beta2:

— упростила конфигурацию мультиплатформенного проекта благодаря новому шаблону по умолчанию;
— значительно улучшила скорость сборки мультиплатформенных проектов за счёт новой конфигурации кэша Gradle;
— оптимизировала работу сборщика мусора, новый аллокатор памяти в Kotlin Native менеджере памяти включён по умолчанию;
— представила новый таргет Kotlin/Wasm;
— реализовала поддержку WASI API в стандартной библиотеке.

Работы над стабилизацией K2 продолжаются.

SKIE в Open Source

Touchlab выпустила в Open Source свой инструмент SKIE. Он улучшает совместимость между Kotlin и Swift для Kotlin Multiplatform.

Java 21 LTS

Вышла Java 21 LTS, ставшая новейшим выпуском долгосрочной поддержки для платформы Java SE. В ней представлено понятие последовательных коллекций, а также:

— расширен Z Garbage Collector (GC) для поддержки отдельных поколений для молодых и старых объектов — это улучшит производительность приложений;
— виртуальные потоки вышли из предварительной версии.

Apple

macOS 14 Sonoma

Apple выпустила macOS 14 Sonoma, новейшую операционную систему для устройства Mac, в которой появился ряд новых функций.

Виджеты в Sonoma теперь можно размещать в любом месте рабочего стола, а их цвет будет динамически меняться в зависимости от доминирующих оттенков обоев. Виджеты с iPhone автоматически отображаются в macOS 14, когда и смартфон, и компьютер подключены к одной сети Wi-Fi.

Фреймворки и IDE

Jetpack BluetoothX

Google выпустила первую альфа сборку Jetpack BluetoothX, которая содержит Kotlin API, покрывающие сканирование с Bluetooth LE.

Android Device Streaming

Запустили Android Device Streaming from Android Studio в раннем доступе. В Canary версии доступно удалённое подключение к физическим устройствам на серверах Google из Android Studio.

Android Studio на основе AOSP

Google представила специальную версию Android Studio для разработчиков платформ на основе AOSP, используя систему сборки Soong. Поддерживаются C++, Kotlin и Java.

Android Jetpack

Вышло обновление Android Jetpack.

Релиз Compose библиотек 1.6.0-alpha04

Из основных изменений в релизе:

— новое экспериментальное API для работы с SurfaceView и TextureView — функции-обертки GraphicsSurface и EmbeddedGraphicsSurface;
— Modifier.magnifier () теперь stable;
— переработана логика масштабирования шрифтов в приложении;
— в ScrollScope добавлены функции updateCurrentPage и updateTargetPage для кастомизации анимированного скролла через PagerState.scroll.

Jetpack Paging 3.3.0

Началась разработка библиотеки Jetpack Paging 3.3.0, которая стала мультиплатформенной.

Koin 3.5.0 и Koin Annotations 1.3.0

В Koin 3.5.0 вошли:

— обновление до Kotlin 1.9 и Jetpack библиотек;
— BOM-артефакт.

А также в нём оптимизировали работу под капотом и улучшили работу в Compose.

Тем временем внутри Koin Annotations 1.3.0:

— проверка графа во время компиляции кода;
— поддержка Kotlin/JS;
— появился BOM-артефакт.

KtLint 1.0

Вышел KtLint 1.0. Вот основные доработки:

— поменялись Maven-артефакты;
— множество экспериментальных правил стали стабильными;
— представлены новые экспериментальные правила;
— исправление багов и улучшения;
— Kotlin 1.9.

Dagger 2.48

В сентябре вышел Dagger 2.48 с поддержкой KSP. Пока он находится в альфа-статусе.

Yandex Mobile Ads SDK 6

Яндекс представил Yandex Mobile Ads SDK 6. В этой версии разработчики смогут монетизировать экран загрузки приложения с помощью инструмента «Реклама при открытии». Также появились новые форматы рекламы с вознаграждением.

SDK AppMetrica

Яндекс опубликовал исходный код SDK AppMetrica. Код распространяется по открытой лицензии MIT. Его можно использовать в полном объёме и менять под свои нужды с указанием авторства.

Studio Bot

Studio Bot в Android Studio заработал в 170 странах мира. Однако у жителей Великобритании, стран Европейского союза и России доступа к нему пока нет. В Studio Bot можно задавать вопросы и получать полезные ответы, включая примеры кода, которые могут решить вашу проблему.

Другое

Google Play Store Listing Certificate

Google обновила Сертификат размещения от Google Play Store. В учебном курсе и экзамене добавились темы, связанные с новейшими инструментами Google Play Console для продвижения продуктов.

Тренды

Исследование «Мобильный потребитель 2023»

Компания Airship выпустила исследование «Мобильный потребитель 2023». В нём отражены настроения, поведение и ожидания пользователей приложений.

Например, выяснилось, что люди устанавливают сервисы брендов, чтобы упростить себе жизнь. Ещё один интересный факт: большинство пользователей «получают» приложения из просмотра сторов или обычного поиска. Сарафанное радио в этом вопросе оказалось только на третьем месте.

Flutter вместо React Native

Всё больше разработчиков приложений выбирают Flutter вместо React Native. К такому выводу пришла компания AppFigures, которая проверила, на чём основаны приложения и игры для iOS и Android.

Согласно полученным данным, сейчас Flutter лидирует по количеству новых установок. Авторы исследования ориентировались на запуски нового приложения с SDK и запуски существующего приложения, которое ранее его не использовало.

Kotlin в Топ-20 TIOBE Index

Kotlin снова вошел в Топ-20 TIOBE Index после шестилетнего перерыва. По словам генерального директора компании TIOBE software и составителя индекса Пола Янсена, причина роста популярности этого языка заключается в том, что он яростный конкурент Java. Kotlin выигрывает у Java практически по всем параметрам, но за последним остаются преимущества более устоявшегося языка, считает Янсен.

Gaming Spotlight Report за 2023 год

Составители отчёта Gaming Spotlight Report пришли к выводу, что несмотря на снижение потребительских расходов на игры, мобильные устройства остаются основным драйвером роста индустрии игр. Авторы также изучили, как меняется отношение пользователей к монетизации приложений через рекламу.

RuStore

«Детский режим» в RuStore

Теперь пользователи RuStore могут включить «Детский режим» и обезопасить ребенка от установки нежелательных приложений и игр. Мы также ограничили и покупки: установка платных приложений защищена пин-кодом, который задаётся при активации режима. О том, как использовать «Детский режим», написали в Help.

RuStore Remote Config

В RuStore Консоли заработал новый инструмент Remote Config. Он предназначен для динамической настройки приложения в реальном времени. С помощью Remote Config можно включать и выключать функциональность приложения без обновления и адаптировать его под нужды пользователей. Подробнее о возможностях и подключении инструмента рассказали в Help.

Tracer

Ещё одним инструментом, который теперь могут использовать разработчики приложений в Rustore, стал Tracer. Сервис собирает и анализирует ошибки, а затем отправляет автоматический отчёт о них разработчику. Информацию о возможностях и подключении инструмента ищите в Help.

Автообновление приложений

В RuStore появилось автоматическое обновление приложений, установленных на устройстве. Теперь при включении пункта «Автообновление», новые версии приложений будут автоматически загружаться, если устройство подключено к сети Wi-Fi. Инструкцию по настройке положили в Help.

© Habrahabr.ru