privacysandbox ui

  
TODO
最新更新 稳定版本 发布候选版本 Beta 版本 Alpha 版本
2024 年 6 月 26 日 - - - 1.0.0-alpha09

声明依赖项

要添加对 privacysandbox-ui 的依赖项,您必须将 Google Maven 存储库添加到您的项目中。阅读 Google 的 Maven 存储库 以获取更多信息。

在您的应用程序或模块的 build.gradle 文件中添加您需要的工件的依赖项

Groovy

dependencies {
    // Use to implement privacysandbox ui
    implementation "androidx.privacysandbox.ui:ui:1.0.0-alpha09"

    // Use to implement privacysandbox ui-core
    implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha09"
   
    // Use to implement privacysandbox ui-core
    implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09"
}

Kotlin

dependencies {
    // Use to implement privacysandbox ui
    implementation("androidx.privacysandbox.ui:ui:1.0.0-alpha09")

    // Use to implement privacysandbox ui-core
    implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha09")

    // Use to implement privacysandbox ui-provider
    implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09")

    
}

有关依赖项的更多信息,请参阅 添加构建依赖项

反馈

您的反馈有助于改进 Jetpack。如果您发现新问题或有改进此库的想法,请告诉我们。在创建新问题之前,请查看此库中 现有问题。您可以通过点击星形按钮为现有问题添加您的投票。

创建新问题

有关更多信息,请参阅 问题跟踪器文档

版本 1.0

版本 1.0.0-alpha09

2024 年 6 月 26 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha09androidx.privacysandbox.ui:ui-core:1.0.0-alpha09androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09 已发布。版本 1.0.0-alpha09 包含 这些提交

新功能

  • 引入了 AbstractSandboxedUiAdapterAbstractSandboxedUiAdapter.AbstractSession 抽象类,UI 提供者可以使用这些类来避免实现整个 SandboxedUiAdapterSession 接口。建议 UI 提供者使用这些抽象类。
  • 添加了 registerObserverFactory 逻辑,该逻辑允许将 SessionObserverFactory 附加到 SandboxedUiAdapter。当 SessionObserverFactory 附加到适配器时,将为该适配器创建的每个新 UI 会话创建一个 SessionObserver。创建的 SessionObserver 将在 UI 会话打开时接收 onSessionOpened 回调。当 Session 的视图的 UI 展示发生变化时,将调用 SessionObserver.onUiContainerChangedonUiContainerChanged 被节流,并且最多每 200 毫秒调用一次。
  • 添加了 SandboxedSdkViewUiInfo,它可以从 SessionObserver.onUiContainerChanged 中发送的 Bundle 创建。此对象表示托管 UI 会话的 SandboxedSdkView 的 UI 状态。它包含高度和宽度信息、一个表示屏幕上可见视图几何形状的 Rect 以及表示视图的不透明度的提示。

API 更改

  • 将不透明度提示添加到 SandboxedSdkViewUiInfo。 (I093ac)
  • 添加 SessionObserver.onUiContainerChangedSandboxedSdkViewUiInfo。 (Ie98bc)
  • 添加 SessionObserver 接口和注册逻辑。 (I047dc)
  • 添加 AbstractSandboxedUiAdapterAbstractSession。 (I3617a)

已知问题

  • 当 UI 提供者与客户端应用程序位于同一进程中时,当容器滚动时,不会发送 SessionObserver.onUiContainerChanged

版本 1.0.0-alpha08

2024 年 5 月 14 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha08androidx.privacysandbox.ui:ui-core:1.0.0-alpha08androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08 已发布。版本 1.0.0-alpha08 包含 这些提交

新功能

  • 添加了对在 PoolingContainer(例如 RecyclerView)内使用 SandboxedSdkView 的支持。当 SandboxedSdkView 的父级是 PoolingContainer 时,其 UI 会话的生命周期将与 PoolingContainer 的生命周期保持一致,以确保会话能够在窗口分离后持久化。

API 更改

  • 弃用隐私沙盒 Activity API。这些 API 现在可以在专用 Activity 库 androidx.privacysandbox.activity 中找到。 (I68beb)

错误修复

  • 修复了在池化容器内显示远程内容时的渲染错误。 (I804df)
  • 修复了一个导致 ViewGroups 在向后兼容模式下出现渲染问题的错误。 (I8de92)
  • SandboxedSdkView 的其中一个父级是 PoolingContainer 时,在 PoolingContainer 指示可以释放资源时关闭 UI 会话,而不是在窗口分离时关闭。 (I2046b)

外部贡献

  • GestureDetectorCompat 现在已弃用,因为 GestureDetector 可从 minSdk 获取。 (Icc4cd)

版本 1.0.0-alpha07

2023 年 10 月 18 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha07androidx.privacysandbox.ui:ui-core:1.0.0-alpha07androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07 已发布。 版本 1.0.0-alpha07 包含这些提交。

新功能

  • 添加了对库的向后兼容支持。在 API 33 及以下版本上,提供者的视图将在应用程序进程内、不同的类加载器中渲染。 (If0b7a)
  • 添加了允许在同一帧中提交主机和提供者容器大小调整的逻辑,以避免可见的 UI 卡顿。 (Ic2cd9)

API 更改

  • 库的 MinSdk 提升至 API 21。 (I474b8)

版本 1.0.0-alpha06

2023 年 9 月 20 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha06androidx.privacysandbox.ui:ui-core:1.0.0-alpha06androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06 已发布。 版本 1.0.0-alpha06 包含这些提交。

新功能

  • 添加了逻辑以将 SandboxedSdkView 剪切到它可能在其中滚动的“边界父级”视图。这确保了 SandboxedSdkView 的内容不会遮挡其他视图或根内容视图之外的任何 UI 组件。 (I9ea94)

API 更改

  • SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction 重命名为 orderProviderUiAboveClientUi (Iecb7e)

错误修复

  • 将正确的 Z 顺序值发送到主机。 (Ib0ddf)
  • 仅针对垂直滚动/弹跳传输触摸焦点。 (I0528c)

版本 1.0.0-alpha05

2023 年 8 月 9 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha05androidx.privacysandbox.ui:ui-core:1.0.0-alpha05androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05 已发布。 版本 1.0.0-alpha05 包含这些提交。

新功能

  • 添加了逻辑以在从 SandboxedSdkView 发起的滚动和弹跳手势时将触摸焦点传输到主机。这允许托管提供者 UI 的客户端的可滚动容器对滚动和弹跳做出正确响应。

API 更改

  • windowInputToken 参数添加到 SandboxedUiAdapter (Ief578)

错误修复

  • 在第一次绘制后将会话状态设置为活动。 (I36f3f)
  • 修复了 SandboxedSdkView 的布局问题。 (I09cb8)
  • 添加了逻辑以将触摸焦点传输到主机。 (I33b54)
  • windowInputToken 参数添加到 SandboxedUiAdapter。这对于确保 SurfaceControlViewHost 的令牌与嵌入式层次结构的主机正确关联是必要的。 (Ief578)
  • 在主线程内运行 notifyResized。 (I62440)
  • 修复了 Session.close() 流中的崩溃。 (I5392e)

版本 1.0.0-alpha04

2023 年 6 月 21 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha04androidx.privacysandbox.ui:ui-core:1.0.0-alpha04androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04 已发布。 版本 1.0.0-alpha04 包含这些提交。

新功能

  • 介绍 SdkActivityLauncher。一个允许运行时启用的 SDK 启动活动的接口。 (I5b3dc)

错误修复

  • 修复 notifyZOrderChanged 竞争条件。确保 UI 提供者会收到所有 Z 顺序更改的通知。如果在调用 openSession 之前更改 SandboxedSdkView 的 Z 顺序,则不会显式通知 UI 提供者。

版本 1.0.0-alpha03

2023 年 5 月 24 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha03androidx.privacysandbox.ui:ui-core:1.0.0-alpha03androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03 已发布。 版本 1.0.0-alpha03 包含这些提交。

新功能

  • StateChangedListener 通知应用程序 UI 会话中的更改

API 更改

  • 添加了 StateChangedListener 以替换 ErrorConsumer (Icd5d3)

错误修复

  • 修复了 notifyZOrderChanged 竞争条件,以便 UI 提供者会收到所有 Z 顺序更改的通知

版本 1.0.0-alpha02

2023 年 4 月 19 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha02androidx.privacysandbox.ui:ui-core:1.0.0-alpha02androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02 已发布。 版本 1.0.0-alpha02 包含这些提交。

错误修复

  • 禁用易于出错的测试 changingSandboxedSdkViewLayoutChangesChildLayout 测试

版本 1.0.0-alpha01

2023 年 3 月 8 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha01androidx.privacysandbox.ui:ui-core:1.0.0-alpha01androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01 已发布。 版本 1.0.0-alpha01 包含这些提交。

新功能

  • 这些是应用程序和运行时启用 SDK(隐私沙盒)可以使用的新 Jetpack 库,以便应用程序(客户端)可以托管 SDK(提供者)提供的任何 UI。