privacysandbox ui
| Последнее обновление | Стабильный релиз | Предварительная версия для выпуска | Бета-версия | Альфа-версия |
|---|---|---|---|---|
| 17 декабря 2025 г. | - | - | - | 1.0.0-alpha17 |
Объявление зависимостей
Чтобы добавить зависимость от privacysandbox-ui, необходимо добавить репозиторий Google Maven в ваш проект. Для получения дополнительной информации ознакомьтесь с информацией в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle вашего приложения или модуля:
классный
dependencies { // Use to implement privacysandbox ui-client implementation "androidx.privacysandbox.ui:ui-client:1.0.0-alpha17" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha17" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha17" }
Котлин
dependencies { // Use to implement privacysandbox ui-client implementation("androidx.privacysandbox.ui:ui-client:1.0.0-alpha17") // Use to implement privacysandbox ui-core implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha17") // Use to implement privacysandbox ui-provider implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha17") }
Для получения дополнительной информации о зависимостях см. раздел «Добавление зависимостей сборки» .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав кнопку со звездочкой.
Для получения более подробной информации см. документацию по системе отслеживания ошибок .
Версия 1.0
Версия 1.0.0-alpha17
17 декабря 2025 г.
Выпущена версия androidx.privacysandbox.ui:ui-*:1.0.0-alpha17 . Версия 1.0.0-alpha17 содержит следующие коммиты .
- Данная библиотека устарела и больше не будет получать обновлений.
Изменения в API : - Устаревшие API privacysandbox.ui ( I858d5 , b/452878636 ) - minSdk изменен с API 21 на 23 ( Ifa120 , b/380448311 ) - Отделение экспериментального SandboxedSdkUi от неэкспериментального ( Ie9154 , b/430118542 ) - SdkSandboxControllerCompat перенесен в sdkruntime-provider ( Id99fb , b/426122358 ) - Клиентское приложение не может изменить z-уровень пользовательского интерфейса поставщика относительно окна клиента с помощью SandboxedSdkView или SandboxedSdkUi ( I87e9f , b/413659157 )
Исправлены ошибки
- Перенос
minSdkпо умолчанию с API 21 на API 23 ( Ibdfca , b/380448311 , b/435705964 , b/435705223 ) - Добавлена поддержка
PoolingContainerдля управления сессиямиSharedUiContainer: сессия общего пользовательского интерфейса не закрывается, если контейнер находится внутриPoolingContainer. ( Iabe16 , b/352500350 )
Версия 1.0.0-alpha16
20 мая 2025 г.
Выпущена версия androidx.privacysandbox.ui:ui-*:1.0.0-alpha16 . Версия 1.0.0-alpha16 содержит следующие коммиты .
Новые функции
- Добавлена логика для измерения препятствий на
SandboxedSdkView, данные о которых будут отправлены вSessionObserver.onUiContainerChanged()еслиSandboxedUiAdapterSignalOptions.OBSTRUCTIONSвключен в соответствующийSessionObserverFactory.signalOptions. Препятствия сообщаются относительно самого представления.
Изменения в API
- Перенесена библиотека
SandboxedSdkUiиз ui-client в новую библиотеку ui-client-compose. - Добавлена логика для измерения препятствий на контейнерах пользовательского интерфейса. ( I34bea )
Исправлены ошибки
- Исправлена ошибка в
SandboxedSdkView.setAlpha(), который теперь обновляет прозрачность представления содержимого.
Версия 1.0.0-alpha15
26 марта 2025 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha15 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha15 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha15 . Версия 1.0.0-alpha15 содержит следующие коммиты .
Новые функции
- Установлено значение по умолчанию для Z-порядка
SandboxedSdkViewиSandboxedSdkUiна «ниже», что указывает на то, что поверхность поставщика теперь располагается ниже окна клиента. Добавлена поддержка приемаMotionEventsпоставщиком пользовательского интерфейса в этом режиме после их получения окном клиента. - В интерфейс
SessionObserverFactoryдобавлено полеsignalOptions. Его можно использовать для определения набора строковых параметров, которые будут определять, какие сигналы будут собираться для соответствующегоSessionObserver. Начальный набор сигналов определяется вSandboxedUiAdapterSignalOptions. Если параметры сигналов не заданы, будут вызываться толькоSessionObserver.onSessionOpened()иSessionObserver.onSessionClosed().
Изменения в API
- В методе
SandboxedUiAdapter.openSession()SessionConstantsпереименована вSessionData.
Известные проблемы
- Когда SDK загружается в среду выполнения SDK и Z-порядок
SandboxedSdkViewилиSandboxedSdkUiустановлен на «выше», жест принимается исключительно окном-поставщиком и больше не передается окну-клиенту.
Версия 1.0.0-alpha14
26 февраля 2025 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha14 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha14 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha14 . Версия 1.0.0-alpha14 содержит следующие коммиты .
Новые функции
- Теперь вы можете создавать «общий пользовательский интерфейс», то есть интерфейс, который может содержать элементы, принадлежащие как клиенту, так и поставщику. Общий пользовательский интерфейс может размещаться с помощью
SharedUiContainer, который расширяетViewGroup. Новые API используют концепцию управления сессиями, аналогичную той, что используется вSandboxedSdkViewиSandboxedUiAdapter. - Все API, добавленные в этом релизе, защищены флагом
@RequiresOptInSharedUiPresentationApi.
Изменения в API
- В
SharedUiContainerдобавлены API для управления сессиями и регистрации ресурсов. Управление сессиями реализовано с помощьюSharedUiAdapter, представленного в том же релизе. ( Ic60b0 ) - Добавлен
SharedUiContainer, который может размещать пользовательский интерфейс, принадлежащий клиенту и поставщику. Все его дочерние элементы располагаются в верхнем левом углу. ( Ia7310 ) - Добавлена поддержка обратной совместимости для
SharedUiAdapter. ( I56d7a ) - Добавлен
SharedUiAdapterдля управления сессиями контейнеров View, которые могут размещать пользовательский интерфейс, принадлежащий клиенту и поставщику. Логика управления сессиями аналогична логикеSandboxedUiAdapter. ( I501f6 )
Исправлены ошибки
- Вычислить показатель видимости при вызове
onVisibilityAggregated. ( I91c69 )
Известные проблемы
- При размещении внутри
PoolingContainer,SharedUiContainerзакрывает сессию при отсоединении окна.
Версия 1.0.0-alpha13
29 января 2025 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha13 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha13 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha13 . Версия 1.0.0-alpha13 содержит следующие коммиты .
Новые функции
- Добавлен объект Composable под названием
SandboxedSdkUi, который можно использовать для отображения удаленного контента в пользовательском интерфейсе Compose. Этот объект использует существующие концепцииSandboxedSdkViewдля управления сессиями и обработчиков событий. ( I009cf ) - Изменена сигнатура метода
SandboxedUiAdapter.openSession, добавлен новый параметрSessionConstants, заменяющий предыдущийwindowInputToken. Этот параметр предназначен для передачи значений, которые будут оставаться постоянными на протяжении всего времени существования объектаSandboxedUiAdapter.Session. ( Ibc0df , I28435 )
Известные проблемы
- События
SessionObserverне отправляются дляSandboxedSdkUiпри прокрутке. - При использовании режима Z-above
SandboxedSdkUiне обрезается родительскими представлениями.
Изменения в API
- Удалить устаревший код
SDKActivityLauncher( I49a4f ) - Логика регистрации фабрики наблюдателей отделена от
SandboxedUiAdapterпутем добавления нового интерфейсаSessionObserverFactoryRegistry. ( I245cc )
Версия 1.0.0-alpha12
11 декабря 2024 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha12 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha12 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12 . Версия 1.0.0-alpha12 содержит следующие коммиты .
Новые функции
- Заменен
StateChangedListenerнаSandboxedSdkViewEventListener. Этот обработчик событий можно использовать для отслеживания событий отображения пользовательского интерфейса, закрытия сессии и ошибки сессии.
Изменения в API
- Добавлен
SandboxedSdkViewEventListenerдля прослушивания событий пользовательского интерфейса внутриSandboxedSdkView. В этой версии также удаленStateChangedListener. ( Id71ea )
Исправлены ошибки
- Удалена логика ограничения границ из
SandboxedSdkView. Это вызовет проблемы с пользовательским интерфейсом, еслиSandboxedSdkViewпомещен в прокручиваемый контейнер иorderProviderUiAboveClientUi(false)не был вызван (пока не будет исправлена ошибка в базовом фреймворке). ( Id420d ) - Исправлена ошибка
RemoteException, которая могла возникнуть, если удаленный процесс завершался с ошибкой при использованииDelegatingSandboxedUiAdapter.
Версия 1.0.0-alpha11
13 ноября 2024 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha11 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha11 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11 . Версия 1.0.0-alpha11 содержит следующие коммиты .
Новые функции
- Представлен экспериментальный API
DelegatingSandboxedUiAdapter, который расширяетSandboxedUiAdapterи может использоваться для делегирования между различнымиSandboxedUiAdapters. Когда этот адаптер установлен в клиентском контейнере, таком какSandboxedSdkView, делегирующий адаптер может изменить адаптер делегата с помощьюupdateDelegate. Это закроет существующую сессию и создаст новыйSandboxedUiAdapter.Sessionдля нового делегата. Это обеспечивает плавный переход между делегатами. ( I5f1c5 , I9e3e7 ) - Добавлена улучшенная поддержка отступов
SandboxedSdkView. ( Ic414f )
Исправлены ошибки
- Исправлена
NullPointerException, которая могла возникать при обработке глобального события компоновки.
Версия 1.0.0-alpha10
18 сентября 2024 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha10 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha10 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10 . Версия 1.0.0-alpha10 содержит следующие коммиты .
Новые функции
- Изменена логика открытия сессии: теперь сессия открывается внутри
SandboxedSdkViewтолько в том случае, если окно, содержащееSandboxedSdkView, видимо. - Изменена логика
SessionObserver: теперьonUiContainerChangedотправляется при изменении видимости окна, содержащегоSandboxedSdkView.
Исправлены ошибки
- Вызовите
onUiContainerChangedпри изменении видимости окна ( I541cf ) - Удалено ручное описание доступа к новым API платформы, поскольку это происходит автоматически посредством моделирования API при использовании R8 с AGP 7.3 или более поздней версии (например, R8 версии 3.3) и для всех сборок при использовании AGP 8.1 или более поздней версии (например, D8 версии 8.1). Клиентам, не использующим AGP, рекомендуется обновиться до D8 версии 8.1 или более поздней. Подробнее см. в этой статье . ( If6b4c , b/345472586 )
Версия 1.0.0-alpha09
26 июня 2024 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha09 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha09 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09 . Версия 1.0.0-alpha09 содержит следующие коммиты .
Новые функции
- Введены абстрактные классы
AbstractSandboxedUiAdapterиAbstractSandboxedUiAdapter.AbstractSession, которые могут использоваться разработчиками пользовательского интерфейса, чтобы избежать реализации полных интерфейсовSandboxedUiAdapterилиSession. Разработчикам пользовательского интерфейса рекомендуется использовать эти абстрактные классы. - Добавлена логика
registerObserverFactory, позволяющая прикрепитьSessionObserverFactoryкSandboxedUiAdapter. При прикрепленииSessionObserverFactoryк адаптеру для каждой новой сессии пользовательского интерфейса, созданной для этого адаптера, будет создаватьсяSessionObserver. СозданныйSessionObserverбудет получать обратный вызовonSessionOpenedпри открытии сессии пользовательского интерфейса. При изменении отображения представленияSessionбудет вызыватьсяSessionObserver.onUiContainerChanged.onUiContainerChangedограничен по времени и будет происходить не чаще, чем каждые 200 мс. - Добавлен
SandboxedSdkViewUiInfo, который можно создать изBundle, передаваемого вSessionObserver.onUiContainerChanged. Этот объект представляет состояние пользовательского интерфейсаSandboxedSdkView, в котором размещена сессия пользовательского интерфейса. Он содержит информацию о высоте и ширине,Rect, представляющий геометрию видимого на экране представления, и подсказку прозрачности, определяющую прозрачность представления.
Изменения в API
- Добавить подсказку о прозрачности в
SandboxedSdkViewUiInfo. ( I093ac ) - Добавьте
SessionObserver.onUiContainerChangedиSandboxedSdkViewUiInfo. ( IE98bc ) - Добавить интерфейс
SessionObserverи логику регистрации. ( I047dc ) - Добавить
AbstractSandboxedUiAdapterиAbstractSession. ( I3617a )
Известные проблемы
- Если поставщик пользовательского интерфейса находится в том же процессе, что и клиентское приложение,
SessionObserver.onUiContainerChangedне отправляется при прокрутке контейнера.
Версия 1.0.0-alpha08
14 мая 2024 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha08 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha08 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08 . Версия 1.0.0-alpha08 содержит следующие коммиты .
Новые функции
- Добавлена поддержка использования
SandboxedSdkViewвнутриPoolingContainer, например,RecyclerView. Когда уSandboxedSdkViewесть родительский объект, являющийсяPoolingContainer, жизненный цикл его сессий пользовательского интерфейса будет согласован с жизненным цикломPoolingContainer, чтобы гарантировать сохранение сессии при отсоединении окна.
Изменения в API
- Устаревшие API для Activity в режиме «песочницы конфиденциальности». Теперь эти API можно найти в специальной библиотеке Activity
androidx.privacysandbox.activity. ( I68beb )
Исправлены ошибки
- Исправлена ошибка рендеринга при отображении удаленного контента внутри контейнеров пула. ( I804df )
- Исправлена ошибка, вызывавшая проблемы с отображением
ViewGroupsв режиме обратной совместимости. ( I8de92 ) - Если один из родительских элементов
SandboxedSdkViewявляетсяPoolingContainer, закрытие сессии пользовательского интерфейса должно происходить, когдаPoolingContainerуказывает на возможность освобождения ресурсов, а не при отсоединении окна. ( I2046b )
Внешний вклад
-
GestureDetectorCompatтеперь устарела, посколькуGestureDetectorдоступен вminSdk( Icc4cd ).
Версия 1.0.0-alpha07
18 октября 2023 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha07 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha07 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07 . Версия 1.0.0-alpha07 содержит следующие коммиты.
Новые функции
- Добавлена поддержка обратной совместимости для библиотеки. В API 33 и ниже представление поставщика будет отображаться внутри процесса приложения, в другом загрузчике классов. ( If0b7a )
- Добавлена логика, позволяющая сохранять изменения размера контейнеров хоста и провайдера в одном и том же фрейме, чтобы избежать видимых рывков пользовательского интерфейса. ( Ic2cd9 )
Изменения в API
- Минимальный SDK для библиотеки обновлен до API 21. ( I474b8 )
Версия 1.0.0-alpha06
20 сентября 2023 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha06 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha06 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06 . Версия 1.0.0-alpha06 содержит следующие коммиты.
Новые функции
- Добавлена логика для обрезки
SandboxedSdkViewпо «ограничивающему родительскому» представлению, внутри которого может происходить прокрутка. Это гарантирует, что содержимоеSandboxedSdkViewне будет перекрывать другие представления или какие-либо компоненты пользовательского интерфейса за пределами корневого представления содержимого. ( I9ea94 )
Изменения в API
- Переименуйте
SandboxedSdkView.setZOrderOnTopAndEnableUserInteractionвorderProviderUiAboveClientUi( Iecb7e ).
Исправлены ошибки
- Отправьте на хост правильное значение Z-порядка. ( Ib0ddf )
- Передача фокуса касания осуществляется только при вертикальной прокрутке/прокрутке. ( I0528c )
Версия 1.0.0-alpha05
9 августа 2023 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha05 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha05 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05 . Версия 1.0.0-alpha05 содержит следующие коммиты.
Новые функции
- Добавлена логика для передачи фокуса касания на хост при прокрутке и жестах перемещения, исходящих из
SandboxedSdkView. Это позволяет пользовательскому интерфейсу хостинга контейнеров с возможностью прокрутки на стороне клиента корректно реагировать на прокрутку и перемещение.
Изменения в API
- Добавлен параметр
windowInputTokenвSandboxedUiAdapter( Ief578 )
Исправлены ошибки
- После первого розыгрыша установите состояние сессии в «Активно» ( I36f3f ).
- Исправлена ошибка компоновки в
SandboxedSdkView. ( I09cb8 ) - Добавлена логика для передачи фокуса касания на хост. ( I33b54 )
- Добавьте параметр
windowInputTokenвSandboxedUiAdapter. Это необходимо для обеспечения корректного сопоставления токенаSurfaceControlViewHostс хостом встроенной иерархии. ( Ief578 ) - Выполнить
notifyResizedвнутри основного потока. ( I62440 ) - Исправлена ошибка, приводящая к сбою в потоке
Session.close(). ( I5392e )
Версия 1.0.0-alpha04
21 июня 2023 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha04 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha04 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04 . Версия 1.0.0-alpha04 содержит следующие коммиты.
Новые функции
- Представляем
SdkActivityLauncher— интерфейс, позволяющий SDK с поддержкой среды выполнения запускать активности. ( I5b3dc )
Исправлены ошибки
- Исправлена ошибка состояния гонки
notifyZOrderChanged. Гарантируется, что поставщик пользовательского интерфейса получает уведомление обо всех изменениях порядка отображения по оси Z. Поставщик пользовательского интерфейса не будет получать явное уведомление, если порядок отображения по оси Z объектаSandboxedSdkViewизменяется до вызова openSession.
Версия 1.0.0-alpha03
24 мая 2023 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha03 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha03 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03 . Версия 1.0.0-alpha03 содержит следующие коммиты.
Новые функции
-
StateChangedListenerинформирует о применении изменений в пользовательском интерфейсе в рамках сессии.
Изменения в API
- Добавлен
StateChangedListenerдля заменыErrorConsumer( Icd5d3 ).
Исправлены ошибки
- Исправлена ошибка гонки в
notifyZOrderChangedблагодаря чему поставщик пользовательского интерфейса получает уведомление обо всех изменениях порядка отображения (Z-order).
Версия 1.0.0-alpha02
19 апреля 2023 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha02 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha02 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02 . Версия 1.0.0-alpha02 содержит следующие коммиты.
Исправлены ошибки
- Отключено отслаивание testChangingSandboxedSdkViewLayoutChangesChildLayout test
Версия 1.0.0-alpha01
8 марта 2023 г.
Выпущены androidx.privacysandbox.ui:ui-client:1.0.0-alpha01 , androidx.privacysandbox.ui:ui-core:1.0.0-alpha01 и androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит следующие коммиты.
Новые функции
- Это новые библиотеки Jetpack, которые приложения и SDK с поддержкой среды выполнения (песочница конфиденциальности) могут использовать, чтобы позволить приложению (клиенту) размещать любой пользовательский интерфейс, предоставляемый SDK (поставщиком).