Google выпустила первую сборку Android 17 Beta для устройств семейства Google Pixel, предназначенную для участников программы Android Beta Program. Приглашаем вас ознакомиться с официальным списком изменений данной сборки.
Сanary вместо Developer Preview С релизом первой бета-версии Android 17 Google объявила об отказе от программы «Developer Preview». Ранее такие сборки новой версии Android выпускались до релиза публичных Beta-сборок, были крайне нестабильны и предназначались для разработчиков и продвинутых энтузиастов.
Теперь на смену «Developer Preview» приходит канал обновлений Canary, в рамках которого пользователи будут непрерывно получать новые обновления и функции.
Более быстрый доступ: Функции и API-интерфейсы появляются в Canary сразу после прохождения внутреннего тестирования, не дожидаясь ежеквартального релиза. Повышенная стабильность: Раннее «боевое тестирование» в Canary приводит к более стабильным Beta-сборкам, где новые API и изменения поведения системы уже близки к финальному виду.
Упрощенное тестирование: Canary поддерживает обновления «по воздуху» (OTA) — больше не нужно прошивать устройство вручную.
Будучи отдельным каналом обновлений, он проще интегрируется в рабочие процессы CI и дает вам самое раннее окно для обратной связи по грядущим изменениям.
График выхода сборок Android 17. Когда релиз? Google перешла на круглогодичный цикл разработки, чтобы быстрее внедрять инновации. Согласно дорожной карте: Март 2026: Достижение этапа Platform Stability (финализация API и функционала).
Июнь 2026 (Q2): Полноценный релиз стабильной версии Android 17 для всех поддерживаемых устройств Pixel. Конец 2026 (Q4): Выпуск минорного обновления с исправлениями и небольшими дополнениями.
Официальный список изменений Androia 17 Beta 1 Ограничения ориентации и изменения размера Релиз Android 17 Beta знаменует новый этап в развитии адаптивности. Начиная с API 37, поддержка изменения размера и ориентации экрана становится обязательной.
Google убрала возможность программного отказа от этих ограничений для устройств с большими экранами (sw > 600 dp). Если ваше приложение ориентировано на SDK 37, оно должно быть полностью адаптивным.
Пользователи ожидают, что их приложения будут работать безупречно в любых сценариях, будь то многозадачность на планшете, использование складного устройства или оконный режим рабочего стола.
Приложение должно эффективно заполнять экранное пространство и корректно подстраиваться под текущее положение устройства. Ключевые изменения для SDK 37 Приложения, нацеленные на Android 17, должны обеспечить совместимость с поэтапным отказом от атрибутов манифеста и API времени выполнения, введенных в Android 16.
При запуске на большом экране (наименьшее измерение ≥ 600dp) следующие атрибуты и API будут игнорироваться: Атрибут манифеста / API Игнорируемые значения screenOrientation portrait, reversePortrait, sensorPortrait, userPortrait, landscape, reverseLandscape, sensorLandscape, userLandscape setRequestedOrientation() portrait, reversePortrait, sensorPortrait, userPortrait, landscape, reverseLandscape, sensorLandscape, userLandscape resizeableActivity все значения minAspectRatio все значения maxAspectRatio все значения Исключения и контроль пользователя Эти изменения касаются только больших экранов.
Они не применяются к экранам размером менее sw600dp (включая традиционные форм-факторы телефонов).
Кроме того, приложения, классифицированные как игры (на основе флага android:appCategory), освобождаются от этих ограничений.
Важно отметить, что контроль остается в руках пользователей.
Вы можете явно включать или отключать использование стандартного поведения приложения через системные настройки соотношения сторон.
Обновления изменений конфигурации (Configuration Changes) Чтобы улучшить совместимость приложений и минимизировать прерывание воспроизведения видео или потерю состояния ввода, Google обновила поведение по умолчанию для пересоздания Activity.
Начиная с Android 17, система больше не будет по умолчанию перезапускать Activity при определенных изменениях конфигурации, которые обычно не требуют перерисовки пользовательского инетрфейса (UI).
Сюда входят: CONFIG_KEYBOARD CONFIG_KEYBOARD_HIDDEN CONFIG_NAVIGATION CONFIG_UI_MODE (когда изменяется только UI_MODE_TYPE_DESK) CONFIG_TOUCHSCREEN CONFIG_COLOR_MODE Вместо этого запущенные Activity будут просто получать эти обновления через метод onConfigurationchanged.
Если вашему приложению всё же требуется полный перезапуск для обновления ресурсов, вы должны явно указать это в манифесте с помощью нового атрибута android:recreateOnConfigChanges.
Он позволяет указать, какие именно изменения конфигурации должны вызывать полный жизненный цикл Activity (stop -> destroy -> create), используя соответствующие константы (mcc, mnc, а также новые: keyboard, keyboardHidden, navigation, touchscreen и colorMode).
Как подготовить приложение: Google выпустила обновленную документацию и инструменты.
Приложениям потребуется поддерживать макеты как для портретной, так и для альбомной ориентации для окон всех размеров.
Ограничение ориентации теперь не поддерживается. Компания рекомендует протестировать приложение в эмуляторах Pixel Tablet или Pixel Fold, используя Android 17 Beta 1. Производительность MessageQueue без блокировок (Lock-free) В Android 17 для приложений с SDK 37+ представлена новая реализация android.
os.MessageQueue, которая не использует блокировки (lock-free). Это улучшает производительность и уменьшает количество пропущенных кадров, но может нарушить работу клиентов, использующих рефлексию для доступа к приватным полям MessageQueue.
Сборка мусора по поколениям (Generational GC) Android 17 представляет сборку мусора по поколениям для коллектора ART Concurrent Mark-Compact.
Эта оптимизация вводит более частые и менее ресурсоемкие сборки «молодого поколения» наряду с полными сборками кучи, что снижает общую нагрузку на процессор и время простоя.
Улучшения ART также доступны для более чем миллиарда устройств с Android 12+ через обновления системы Google Play. Поля static final теперь действительно финальные Приложения, ориентированные на Android 17+, теперь не могут изменять поля static final.
Это позволяет среде выполнения (runtime) применять более агрессивные оптимизации. Попытка изменить их через рефлексию приведет к исключению IllegalAccessException, а через JNI — к немедленному краху приложения.
Ограничения для Custom Notification View Для снижения потребления памяти ограничены размеры кастомных представлений уведомлений.
Это обновление закрывает лазейку, позволявшую обходить лимиты с помощью URI. Изменение вступает в силу для приложений с targetSdkVersion 37 и выше. Новые триггеры ProfilingManager Были добавлены новые системные триггеры: TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM и TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE для более глубокой отладки производительности.
Медиа и Камера Динамическое обновление сессий камеры Представлен метод updateOutputConfigurations() для CameraCaptureSession.
Он позволяет динамически подключать и отключать выходные поверхности (surfaces) без необходимости перенастраивать всю сессию захвата. Это обеспечивает плавные переходы между режимами (например, фото и видео) без рывков, черных экранов и лишних затрат памяти.
fun updateCameraSession(session: CameraCaptureSession, newOutputConfigs: List)) { // Динамическое обновление сессии без закрытия и повторного открытия try { // Обновляем конфигурации вывода session.
updateOutputConfigurations(newOutputConfigs) } catch (e: CameraAccessException) { // Обработка ошибки } } Метаданные логической мультикамеры При работе с логическими камерами теперь можно запрашивать метаданные от всех активных физических камер, участвующих в захвате, используя новый ключ LOGICAL_MULTI_CAMERA_ADDITIONAL_RESULTS.
Поддержка Versatile Video Coding (VVC) Android 17 добавляет поддержку стандарта H.
266 (VVC). Теперь система включает в себя новый MIME-тип video/vvc, новые профили в MediaCodecInfo и поддержку в MediaExtractor.
Функция будет доступна на устройствах с аппаратной поддержкой декодирования. Постоянное качество (Constant Quality) для видео Добавлен метод setVideoEncodingQuality() в MediaRecorder.
Это позволяет настроить режим постоянного качества (CQ) для видеокодеров, давая более тонкий контроль над качеством, чем простые настройки битрейта. Усиление контроля за фоновым аудио Аудиофреймворк теперь принудительно ограничивает взаимодействие с фоновым аудио (воспроизведение, запрос фокуса, изменение громкости), чтобы гарантировать, что эти действия инициированы пользователем намеренно.
Если приложение попытается вызвать аудио-API вне допустимого жизненного цикла, вызовы завершатся тихим сбоем (без исключения), а запрос аудиофокуса вернет AUDIOFOCUS_REQUEST_FAILED.
Безопасность и связь Отказ от Cleartext Traffic.
Атрибут android:usesCleartextTraffic признан устаревшим. Приложения (targetSdk 17+), полагающиеся на него без настройки сетевой безопасности, по умолчанию будут запрещать незашифрованный трафик. HPKE Hybrid Cryptography.
Внедрен публичный интерфейс SPI для реализации гибридной криптографии HPKE, сочетающего открытые ключи и симметричное шифрование (AEAD). Улучшенная история звонков VoIP. В системную «звонилку» добавлена поддержка аватаров для VoIP-вызовов (из WhatsApp, Telegram и др.
) и более гибкое управление приватностью логов. Wi-Fi Ranging. Добавлены новые возможности для определения близости и реализована поддержка безопасного обнаружения устройств (peer-to-peer) с использованием стандарта 11az.
Улучшения для разрабочтиков В CompanionDeviceManager добавлены два новых профиля: Медицинские устройства (Medical Devices).
Медицинские приложения теперь могут запрашивать все необходимые разрешения одним нажатием. Фитнес-трекеры (Fitness Trackers). Профиль для фитнес-браслетов обеспечивает корректное отображение иконок и переиспользование разрешений, характерных для носимых устройств.
Также внедрен единый диалог для сопряжения устройств и запроса разрешений на поиск устройствпоблизости (Nearby), что уменьшает количество всплывающих окон для пользователя.
Какие устройства получат Android 17 Beta 1? Первая бета-версия уже доступна для большинства устройств Google Pixel, вот полный список: Серия Pixel 10: Pixel 10, 10 Pro, 10 Pro XL, 10 Pro Fold.
Серия Pixel 9: Pixel 9, 9 Pro, 9 Pro XL, 9 Pro Fold, 9a. Серия Pixel 8: Pixel 8, 8 Pro, 8a. Серия Pixel 7: Pixel 7, 7 Pro, 7a. Серия Pixel 6: Pixel 6, 6 Pro, 6a. Другие: Pixel Tablet, Pixel Fold. Как установить Android 17 Beta 1? Если у вас есть одно из перечисленных устройств, вы можете вступить в Android Beta Program на официальном сайте.
Если вы уже являетесь участником программы бета-тестирования, уведомление о доступности OTA-обновления появится автоматически в ближайшее время.
Обратите внимание, что если у вас установлена бета-версия 26Q1 и вы хотите получить финальный стабильный релиз 26Q1 (выйдя из беты), вам нужно проигнорировать обновление до 26Q2 Beta 1.
Желаем вам удачного обновления!.
Рубрика: Развлечения и Интернет. Читать весь текст на thecommunity.ru.