privacysandbox ui

  
TODO
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2025 年 12 月 17 日 - - - 1.0.0-alpha17

依存関係の宣言

privacysandbox-ui への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

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"
}

Kotlin

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 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

バージョン 1.0

バージョン 1.0.0-alpha17

2025 年 12 月 17 日

androidx.privacysandbox.ui:ui-*:1.0.0-alpha17 がリリースされました。バージョン 1.0.0-alpha17 にはこれらの commit が含まれています。

  • このライブラリは非推奨となり、今後のアップデートは提供されません。

API の変更 - privacysandbox.ui API を非推奨にしました(I858d5b/452878636) - minSdk を API 21 から 23 に変更しました(Ifa120b/380448311) - 試験運用版の SandboxedSdkUi を試験運用版でないものから切り離しました。(Ie9154b/430118542) - SdkSandboxControllerCompatsdkruntime-provider に移行しました(Id99fbb/426122358)。 - クライアント アプリは、SandboxedSdkView または SandboxedSdkUi を使用して、クライアント ウィンドウに対するプロバイダ UI の z レベルを変更できません。(I87e9fb/413659157

バグの修正

  • デフォルトの minSdk を API 21 から API 23 に移行(Ibdfcab/380448311b/435705964b/435705223
  • SharedUiContainer セッション管理に PoolingContainer サポートを追加しました。コンテナが PoolingContainer 内にある場合、共有 UI セッションは閉じられません。(Iabe16b/352500350

バージョン 1.0.0-alpha16

2025 年 5 月 20 日

androidx.privacysandbox.ui:ui-*:1.0.0-alpha16 がリリースされました。バージョン 1.0.0-alpha16 には、これらの commit が含まれています。

新機能

  • SandboxedSdkView の障害を測定するロジックを追加しました。関連付けられた SessionObserverFactory.signalOptionsSandboxedUiAdapterSignalOptions.OBSTRUCTIONS が含まれている場合、このロジックは SessionObserver.onUiContainerChanged() で送信されます。障害物はビュー自体を基準にして報告されます。

API の変更

  • SandboxedSdkUi を ui-client から新しい ui-client-compose ライブラリに移動しました。
  • UI コンテナの遮蔽を測定するロジックを追加しました。(I34bea

バグの修正

  • SandboxedSdkView.setAlpha() を修正しました。コンテンツ ビューのアルファが更新されるようになりました。

バージョン 1.0.0-alpha15

2025 年 3 月 26 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha15androidx.privacysandbox.ui:ui-core:1.0.0-alpha15androidx.privacysandbox.ui:ui-provider:1.0.0-alpha15 がリリースされました。バージョン 1.0.0-alpha15 には、これらの commit が含まれています。

新機能

  • SandboxedSdkViewSandboxedSdkUi のデフォルトの Z 順序を「下」に設定します。これは、プロバイダのサーフェスがクライアントのウィンドウの下に配置されることを示します。クライアント ウィンドウで受信された後、このモードで UI プロバイダが MotionEvents を受信するためのサポートを追加しました。
  • SessionObserverFactory インターフェースに signalOptions フィールドを追加しました。これは、関連付けられた SessionObserver に対して収集されるシグナルを決定するために使用される String オプションのセットを定義するために使用できます。シグナルの初期セットは SandboxedUiAdapterSignalOptions で定義されています。シグナル オプションが設定されていない場合は、SessionObserver.onSessionOpened()SessionObserver.onSessionClosed() のみが呼び出されます。

API の変更

  • SandboxedUiAdapter.openSession()SessionConstants の名前を SessionData に変更しました。

既知の問題

  • SDK が SDK ランタイムに読み込まれ、SandboxedSdkView または SandboxedSdkUi の Z オーダーが「上」の場合、ジェスチャーはプロバイダ ウィンドウでのみ受信され、クライアント ウィンドウに転送されなくなります。

バージョン 1.0.0-alpha14

2025 年 2 月 26 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha14androidx.privacysandbox.ui:ui-core:1.0.0-alpha14androidx.privacysandbox.ui:ui-provider:1.0.0-alpha14 がリリースされました。バージョン 1.0.0-alpha14 には、これらの commit が含まれています。

新機能

  • クライアント所有の要素とプロバイダ所有の要素を持つことができる「共有 UI」を作成できるようになりました。共有 UI は ViewGroup を拡張する SharedUiContainer を使用してホストできます。新しい API は、SandboxedSdkViewSandboxedUiAdapter と同様のセッション管理のコンセプトを利用します。
  • このリリースで追加されたすべての API は、SharedUiPresentationApi @RequiresOptIn フラグの背後にあります。

API の変更

  • セッション管理 API とアセット登録 API を SharedUiContainer に追加しました。セッション管理は、同じリリースで導入された SharedUiAdapter を使用して実装されます。(Ic60b0
  • クライアント所有の UI とプロバイダ所有の UI をホストできる SharedUiContainer を追加しました。すべての子ビューを左上隅に配置します。(Ia7310
  • SharedUiAdapter の下位互換性サポートを追加しました。(I56d7a
  • クライアント所有の UI とプロバイダ所有の UI をホストできる View コンテナのセッション管理用に SharedUiAdapter を追加しました。セッション管理ロジックは SandboxedUiAdapter のロジックと似ています。(I501f6

バグの修正

  • onVisibilityAggregated が呼び出されたときに視認性を計算します。(I91c69

既知の問題

  • PoolingContainer 内に配置された場合、SharedUiContainer はウィンドウのデタッチ時にセッションを閉じます。

バージョン 1.0.0-alpha13

2025 年 1 月 29 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha13androidx.privacysandbox.ui:ui-core:1.0.0-alpha13androidx.privacysandbox.ui:ui-provider:1.0.0-alpha13 がリリースされました。バージョン 1.0.0-alpha13 にはこれらの commit が含まれています。

新機能

  • Compose UI 内にリモート コンテンツを表示するために使用できる SandboxedSdkUi というコンポーザブル オブジェクトを追加しました。このオブジェクトは、セッション管理とイベント リスナーに既存の SandboxedSdkView のコンセプトを利用します。(I009cf
  • SandboxedUiAdapter.openSession シグネチャを変更し、以前の windowInputToken を置き換える新しい SessionConstants パラメータを追加しました。このパラメータは、SandboxedUiAdapter.Session の有効期間中一定の値を渡すために使用されます。(Ibc0dfI28435

既知の問題

  • SandboxedSdkUi がスクロールされたときに SessionObserver イベントが送信されません。
  • SandboxedSdkUi が Z-above モードの場合、親ビューによってクリップされません。

API の変更

  • 非推奨の SDKActivityLauncher コードを削除しました(I49a4f
  • 新しい SessionObserverFactoryRegistry インターフェースを追加して、オブザーバー ファクトリ登録ロジックを SandboxedUiAdapter から分離しました。(I245cc

バージョン 1.0.0-alpha12

2024 年 12 月 11 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha12androidx.privacysandbox.ui:ui-core:1.0.0-alpha12androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12 がリリースされました。バージョン 1.0.0-alpha12 には、これらの commit が含まれています。

新機能

  • StateChangedListenerSandboxedSdkViewEventListener に変更されました。このイベント リスナーは、UI の表示、セッションの終了、セッションのエラー イベントをリッスンするために使用できます。

API の変更

  • SandboxedSdkView 内の UI イベントをリッスンするための SandboxedSdkViewEventListener を追加しました。このバージョンでは、StateChangedListener も削除されます。(Id71ea

バグの修正

  • SandboxedSdkView からクリッピング境界ロジックを削除しました。SandboxedSdkView がスクロール可能なコンテナに配置され、orderProviderUiAboveClientUi(false) が呼び出されていない場合(基盤となるフレームワークのバグが修正されるまで)、UX の問題が発生します。(Id420d
  • DelegatingSandboxedUiAdapter の使用中にリモート プロセスが終了した場合に発生する可能性がある RemoteException を修正しました。

バージョン 1.0.0-alpha11

2024 年 11 月 13 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha11androidx.privacysandbox.ui:ui-core:1.0.0-alpha11androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11 がリリースされました。バージョン 1.0.0-alpha11 には、これらの commit が含まれています。

新機能

  • SandboxedUiAdapter を拡張し、異なる SandboxedUiAdapters 間で委任するために使用できる試験運用版 API DelegatingSandboxedUiAdapter を導入しました。このアダプタが SandboxedSdkView などのクライアント コンテナに設定されている場合、委任アダプタは updateDelegate を使用して委任アダプタを変更できます。これにより、既存のセッションが閉じられ、新しい委任者の新しい SandboxedUiAdapter.Session が作成されます。これにより、デリゲート間のシームレスな移行が可能になります。(I5f1c5I9e3e7
  • パディングの SandboxedSdkView サポートを改善しました。(Ic414f

バグの修正

  • グローバル レイアウト イベントで発生する可能性のある NullPointerException を修正しました。

バージョン 1.0.0-alpha10

2024 年 9 月 18 日

androidx.privacysandbox.ui:ui-client:1.0.0-alpha10androidx.privacysandbox.ui:ui-core:1.0.0-alpha10androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10 がリリースされました。バージョン 1.0.0-alpha10 にはこれらの commit が含まれています。

新機能

  • SandboxedSdkView を含むウィンドウが表示されている場合にのみ、SandboxedSdkView 内のセッションを開くようにセッションを開くロジックを更新しました。
  • SandboxedSdkView を含むウィンドウの表示設定が変更されたときに onUiContainerChanged を送信するよう SessionObserver ロジックを更新しました。

バグの修正

  • ウィンドウの表示状態が変更されたときに onUiContainerChanged を呼び出す(I541cf
  • AGP 7.3 以降(R8 バージョン 3.3 など)で R8 を使用する場合、および AGP 8.1 以降(D8 バージョン 8.1 など)ですべてのビルドで、API モデリングを介して自動的に行われるため、新しいプラットフォーム API へのアクセスの手動でのアウトライン設定を削除しました。AGP を使用していないクライアントは、D8 バージョン 8.1 以降に更新することをおすすめします。詳しくは、こちらの記事をご覧ください。(If6b4cb/345472586

バージョン 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 には、これらの commit が含まれています。

新機能

  • UI プロバイダが SandboxedUiAdapter インターフェースまたは Session インターフェース全体を実装しなくても済むように、AbstractSandboxedUiAdapter 抽象クラスと AbstractSandboxedUiAdapter.AbstractSession 抽象クラスを導入しました。UI プロバイダはこれらの抽象クラスを使用することをおすすめします。
  • SessionObserverFactorySandboxedUiAdapter にアタッチできるようにする registerObserverFactory ロジックを追加しました。SessionObserverFactory がアダプタにアタッチされると、そのアダプタ用に作成された新しい UI セッションごとに SessionObserver が作成されます。作成された SessionObserver は、UI セッションが開くと onSessionOpened コールバックを受け取ります。Session のビューの UI プレゼンテーションが変更されると、SessionObserver.onUiContainerChanged が呼び出されます。onUiContainerChanged はスロットリングされ、最大で 200 ミリ秒ごとに呼び出されます。
  • SessionObserver.onUiContainerChanged で送信された Bundle から作成できる SandboxedSdkViewUiInfo を追加しました。このオブジェクトは、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 にはこれらの commit が含まれています。

新機能

  • RecyclerView などの PoolingContainer 内で SandboxedSdkView を使用できるようになりました。SandboxedSdkViewPoolingContainer の親がある場合、UI セッションのライフサイクルは PoolingContainer のライフサイクルと一致し、セッションがウィンドウのデタッチ後も存続できるようになります。

API の変更

  • 非推奨の Privacy Sandbox Activity API。これらの API は、専用のアクティビティ ライブラリ androidx.privacysandbox.activity で確認できるようになりました。(I68beb

バグの修正

  • プーリング コンテナ内にリモート コンテンツを表示する際のレンダリング バグを修正しました。(I804df
  • 下位互換モードで ViewGroups のレンダリングの問題を引き起こしていたバグを修正しました。(I8de92
  • SandboxedSdkView の親の 1 つが PoolingContainer の場合、ウィンドウの切り離し時ではなく、PoolingContainer がリソースを解放できることを示すときに UI セッションを閉じます。(I2046b

外部からの協力

  • minSdk から GestureDetector を利用できるようになったため、GestureDetectorCompat は非推奨になりました。(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 に含まれる commit については、こちらをご覧ください。

新機能

  • ライブラリの下位互換性のサポートを追加しました。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 に含まれる commit については、こちらをご覧ください。

新機能

  • 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 に含まれる commit については、こちらをご覧ください

新機能

  • SandboxedSdkView から発生したスクロール ジェスチャーとフリング ジェスチャーでタッチ フォーカスをホストに転送するロジックを追加しました。これにより、クライアントのスクロール可能なコンテナ ホスティング プロバイダ UI がスクロールとフリングに正しく応答できるようになります。

API の変更

  • SandboxedUiAdapterwindowInputToken パラメータを追加しました(Ief578

バグの修正

  • 初回描画後にセッションの状態を Active に設定(I36f3f
  • SandboxedSdkView のレイアウトに関する問題を修正しました。(I09cb8
  • タッチ フォーカスをホストに転送するロジックを追加しました。(I33b54
  • SandboxedUiAdapterwindowInputToken パラメータを追加します。これは、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 に含まれる commit については、こちらをご覧ください

新機能

  • SdkActivityLauncher を導入します。ランタイム対応 SDK がアクティビティを起動できるようにするためのインターフェース。(I5b3dc

バグの修正

  • notifyZOrderChanged の競合状態を修正しました。すべての Z オーダーの変更について UI プロバイダに通知されるようにします。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 に含まれる commit については、こちらをご覧ください

新機能

  • StateChangedListener は、UI セッションの変更をアプリに通知します。

API の変更

  • ErrorConsumer に代えて StateChangedListener を追加しました(Icd5d3

バグの修正

  • notifyZOrderChanged の競合状態を修正し、すべての Z オーダーの変更について UI プロバイダに通知されるようにしました

バージョン 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 に含まれる commit については、こちらをご覧ください

バグの修正

  • 不安定なテスト 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 に含まれる commit については、こちらをご覧ください。

新機能

  • これらは新しい Jetpack ライブラリで、アプリケーションとランタイム対応 SDK(プライバシー サンドボックス)が使用して、アプリケーション(クライアント)が SDK(プロバイダ)によって提供される UI をホストできるようにします。