Android 17 представляет множество новых функций и API для разработчиков. В следующих разделах приведено краткое описание этих функций, которое поможет вам начать работу с соответствующими API.
Подробный список новых, измененных и удаленных API см. в отчете об изменениях API . Подробную информацию о новых API см. в справочнике Android API — новые API выделены для большей наглядности.
Также следует проанализировать области, где изменения платформы могут повлиять на ваши приложения. Для получения дополнительной информации см. следующие страницы:
- Изменения в поведении, влияющие на приложения при использовании Android 17.
- Изменения в поведении, затрагивающие все приложения независимо от
targetSdkVersion.
Основная функциональность
В Android 17 добавлены следующие новые функции, относящиеся к основным возможностям Android.
Новые триггеры ProfilingManager
Android 17 adds several new system triggers to ProfilingManager to
help you collect in-depth data to debug performance issues.
The new triggers are:
TRIGGER_TYPE_COLD_START: Trigger occurs during app cold start. It provides both a call stack sample and a system trace in the response.TRIGGER_TYPE_OOM: Trigger occurs when an app throws anOutOfMemoryErrorand provides a Java Heap Dump in response.TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE: Trigger occurs when an app is killed due to abnormal and excessive CPU usage and provides a call stack sample in response.
To understand how to set up the system trigger, see the documentation on trigger-based profiling and how to retrieve and analyze profiling data documentation.
Безопасность
В Android 17 добавлены следующие новые функции для повышения безопасности устройств и приложений.
Расширенный режим защиты Android (AAPM)
Расширенный режим защиты Android (AAPM) предлагает пользователям Android мощный новый набор функций безопасности, что является значительным шагом в защите пользователей — особенно тех, кто подвержен повышенному риску — от сложных атак. Разработанный как функция с возможностью выбора, AAPM активируется с помощью одной настройки конфигурации, которую пользователи могут включить в любое время, чтобы применить определенный набор мер защиты.
Эти основные настройки включают блокировку установки приложений из неизвестных источников (боковая загрузка), ограничение передачи данных по USB и обязательное сканирование с помощью Google Play Protect, что значительно уменьшает площадь поверхности атаки устройства. Разработчики могут интегрировать эту функцию с помощью API AdvancedProtectionManager для определения статуса режима, что позволяет приложениям автоматически переходить в режим повышенной безопасности или ограничивать работу с функциями высокого риска, если пользователь дал на это согласие.
Подключение
В Android 17 добавлены следующие функции для улучшения взаимодействия устройств и приложений.
Ограниченные спутниковые сети
Внедряет оптимизации, позволяющие приложениям эффективно работать в сетях спутниковой связи с низкой пропускной способностью.
Пользовательский опыт и пользовательский интерфейс системы
В Android 17 внесены следующие изменения для улучшения пользовательского опыта.
Передавать
Handoff — это новая функция и API, которые появятся в Android 17 и которые разработчики приложений смогут интегрировать для обеспечения непрерывности работы приложений на разных устройствах. Она позволяет пользователю запустить приложение на одном устройстве Android и перевести его на другое. Handoff работает в фоновом режиме на устройстве пользователя и отображает доступные приложения с других находящихся рядом устройств пользователя через различные точки входа, такие как панель запуска и панель задач, на принимающем устройстве.
Приложения могут настроить Handoff на запуск того же самого нативного приложения Android, если оно установлено и доступно на принимающем устройстве. В этом процессе взаимодействия между приложениями пользователь получает прямую ссылку на указанное действие. В качестве альтернативы, в качестве резервного варианта может быть предложен Handoff для взаимодействия между приложением и веб-приложением или он может быть реализован напрямую с помощью URL Handoff.
Поддержка Handoff реализована для каждой активности отдельно. Чтобы включить Handoff, вызовите метод setHandoffEnabled() для соответствующей активности. Для восстановления состояния на принимающем устройстве при передаче данных могут потребоваться дополнительные данные. Реализуйте функцию обратного вызова onHandoffActivityRequested() которая будет возвращать объект HandoffActivityData , содержащий подробную информацию о том, как Handoff должен обрабатывать и восстанавливать активность на принимающем устройстве.