UI privacysandbox

  
TODO
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
13 November 2024 - - - 1.0.0-alpha11

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada privacysandbox-ui, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

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

    
}

Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.

Masukan

Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

Versi 1.0

Versi 1.0.0-alpha11

13 November 2024

androidx.privacysandbox.ui:ui-client:1.0.0-alpha11, androidx.privacysandbox.ui:ui-core:1.0.0-alpha11, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11 dirilis. Versi 1.0.0-alpha11 berisi commit ini.

Fitur Baru

  • Memperkenalkan API eksperimental, DelegatingSandboxedUiAdapter, yang memperluas SandboxedUiAdapter dan dapat digunakan untuk mendelegasikan antara SandboxedUiAdapters yang berbeda. Jika adaptor ini ditetapkan pada penampung klien seperti SandboxedSdkView, adaptor delegasi dapat mengubah adaptor delegasi menggunakan updateDelegate. Tindakan ini akan menutup sesi yang ada dan membuat SandboxedUiAdapter.Session baru untuk delegasi baru. Hal ini memungkinkan transisi yang lancar antar-delegasi. (I5f1c5, I9e3e7)
  • Menambahkan dukungan SandboxedSdkView yang lebih baik untuk padding. (Ic414f)

Perbaikan Bug

  • Memperbaiki NullPointerException yang dapat terjadi pada peristiwa tata letak global.

Versi 1.0.0-alpha10

18 September 2024

androidx.privacysandbox.ui:ui-client:1.0.0-alpha10, androidx.privacysandbox.ui:ui-core:1.0.0-alpha10, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10 dirilis. Versi 1.0.0-alpha10 berisi commit ini.

Fitur Baru

  • Memperbarui logika pembukaan sesi agar hanya membuka sesi di dalam SandboxedSdkView jika jendela yang berisi SandboxedSdkView terlihat.
  • Memperbarui logika SessionObserver untuk mengirim onUiContainerChanged saat visibilitas jendela yang berisi SandboxedSdkView berubah.

Perbaikan Bug

  • Memanggil onUiContainerChanged saat visibilitas jendela berubah (I541cf)
  • Menghapus garis besar manual akses ke API platform baru karena hal ini terjadi secara otomatis melalui pemodelan API saat menggunakan R8 dengan AGP 7.3 atau yang lebih baru (misalnya, R8 versi 3.3) dan untuk semua build saat menggunakan AGP 8.1 atau yang lebih baru (misalnya, D8 versi 8.1). Klien yang tidak menggunakan AGP disarankan untuk mengupdate ke D8 versi 8.1 atau yang lebih baru. Baca artikel ini untuk informasi selengkapnya. (If6b4c, b/345472586)

Versi 1.0.0-alpha09

26 Juni 2024

androidx.privacysandbox.ui:ui-client:1.0.0-alpha09, androidx.privacysandbox.ui:ui-core:1.0.0-alpha09, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09 dirilis. Versi 1.0.0-alpha09 berisi commit ini.

Fitur Baru

  • Memperkenalkan class abstrak AbstractSandboxedUiAdapter dan AbstractSandboxedUiAdapter.AbstractSession yang dapat digunakan oleh penyedia UI untuk menghindari penerapan seluruh antarmuka SandboxedUiAdapter atau Session. Sebaiknya penyedia UI menggunakan class abstrak ini.
  • Menambahkan logika registerObserverFactory yang memungkinkan SessionObserverFactory dilampirkan ke SandboxedUiAdapter. Saat SessionObserverFactory dilampirkan ke adaptor, SessionObserver akan dibuat untuk setiap sesi UI baru yang dibuat untuk adaptor tersebut. SessionObserver yang dibuat akan menerima callback onSessionOpened saat sesi UI dibuka. Saat presentasi UI tampilan Session berubah, SessionObserver.onUiContainerChanged akan dipanggil. onUiContainerChanged dibatasi dan akan dipanggil paling banyak setiap 200 md.
  • Menambahkan SandboxedSdkViewUiInfo yang dapat dibuat dari Bundle yang dikirim di SessionObserver.onUiContainerChanged. Objek ini mewakili status UI SandboxedSdkView yang menghosting sesi UI. View ini berisi informasi tinggi dan lebar, Rect yang mewakili geometri tampilan yang terlihat di layar, dan petunjuk opasitas yang mewakili opasitas tampilan.

Perubahan API

  • Tambahkan petunjuk opasitas ke SandboxedSdkViewUiInfo. (I093ac)
  • Tambahkan SessionObserver.onUiContainerChanged dan SandboxedSdkViewUiInfo. (Ie98bc)
  • Menambahkan antarmuka dan logika pendaftaran SessionObserver. (I047dc)
  • Tambahkan AbstractSandboxedUiAdapter dan AbstractSession. (I3617a)

Masalah Umum

  • Jika penyedia UI berada dalam proses yang sama dengan aplikasi klien, SessionObserver.onUiContainerChanged tidak akan dikirim saat penampung di-scroll.

Versi 1.0.0-alpha08

14 Mei 2024

androidx.privacysandbox.ui:ui-client:1.0.0-alpha08, androidx.privacysandbox.ui:ui-core:1.0.0-alpha08, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08 dirilis. Versi 1.0.0-alpha08 berisi commit ini.

Fitur Baru

  • Menambahkan dukungan untuk menggunakan SandboxedSdkView di dalam PoolingContainer seperti RecyclerView. Jika SandboxedSdkView memiliki induk yang merupakan PoolingContainer, siklus proses sesi UI-nya akan diselaraskan dengan siklus proses PoolingContainer untuk memastikan sesi dapat dipertahankan melalui pelepasan jendela.

Perubahan API

  • Privacy Sandbox Activity API yang tidak digunakan lagi. API ini kini dapat ditemukan di library Aktivitas khusus androidx.privacysandbox.activity. (I68beb)

Perbaikan Bug

  • Memperbaiki bug rendering saat menampilkan konten jarak jauh di dalam penampung penggabungan. (I804df)
  • Memperbaiki bug yang menyebabkan masalah rendering untuk ViewGroups dalam mode kompatibilitas mundur. (I8de92)
  • Jika salah satu induk SandboxedSdkView adalah PoolingContainer, tutup Sesi UI saat PoolingContainer menunjukkan bahwa resource dapat dirilis, bukan saat jendela dilepaskan. (I2046b)

Kontribusi Eksternal

  • GestureDetectorCompat kini tidak digunakan lagi karena GestureDetector tersedia dari minSdk. (Icc4cd)

Versi 1.0.0-alpha07

18 Oktober 2023

androidx.privacysandbox.ui:ui-client:1.0.0-alpha07, androidx.privacysandbox.ui:ui-core:1.0.0-alpha07, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07 dirilis. Versi 1.0.0-alpha07 berisi commit berikut ini.

Fitur Baru

  • Menambahkan dukungan kompatibilitas mundur untuk library. Pada API 33 dan yang lebih lama, tampilan penyedia akan dirender di dalam proses aplikasi, di classloader yang berbeda. (If0b7a)
  • Menambahkan logika yang memungkinkan perubahan ukuran penampung host dan penyedia di-commit dalam frame yang sama untuk menghindari jank UI yang terlihat. (Ic2cd9)

Perubahan API

  • MinSdk untuk library ditambahkan ke API 21. (I474b8)

Versi 1.0.0-alpha06

20 September 2023

androidx.privacysandbox.ui:ui-client:1.0.0-alpha06, androidx.privacysandbox.ui:ui-core:1.0.0-alpha06, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06 dirilis. Versi 1.0.0-alpha06 berisi commit berikut ini.

Fitur Baru

  • Menambahkan logika untuk memotong SandboxedSdkView ke Tampilan “induk pembatas” yang dapat di-scroll. Hal ini memastikan bahwa konten SandboxedSdkView tidak menutupi tampilan lain atau komponen UI apa pun di luar tampilan konten root. (I9ea94)

Perubahan API

  • Mengganti nama SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction menjadi orderProviderUiAboveClientUi (Iecb7e)

Perbaikan Bug

  • Kirim nilai urutan Z yang benar ke host. (Ib0ddf)
  • Hanya transfer fokus sentuh untuk scroll/ayun vertikal. (I0528c)

Versi 1.0.0-alpha05

9 Agustus 2023

androidx.privacysandbox.ui:ui-client:1.0.0-alpha05, androidx.privacysandbox.ui:ui-core:1.0.0-alpha05, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05 dirilis. Versi 1.0.0-alpha05 berisi commit ini.

Fitur Baru

  • Menambahkan logika untuk mentransfer fokus sentuh ke host pada gestur scroll dan fling yang berasal dari SandboxedSdkView. Hal ini memungkinkan UI penyedia hosting penampung yang dapat di-scroll klien merespons scroll dan fling dengan benar.

Perubahan API

  • Menambahkan parameter windowInputToken ke SandboxedUiAdapter (Ief578)

Perbaikan Bug

  • Menetapkan status sesi ke Aktif setelah gambar pertama (I36f3f)
  • Memperbaiki masalah tata letak terkait SandboxedSdkView. (I09cb8)
  • Menambahkan logika untuk mentransfer fokus sentuh ke host. (I33b54)
  • Menambahkan parameter windowInputToken ke SandboxedUiAdapter. Hal ini diperlukan untuk memastikan token SurfaceControlViewHost dikaitkan dengan benar dengan host hierarki tersemat. (Ief578)
  • Jalankan notifyResized di dalam thread utama. (I62440)
  • Memperbaiki error dalam alur Session.close(). (I5392e)

Versi 1.0.0-alpha04

21 Juni 2023

androidx.privacysandbox.ui:ui-client:1.0.0-alpha04, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04 dirilis. Versi 1.0.0-alpha04 berisi commit berikut ini.

Fitur Baru

  • Memperkenalkan SdkActivityLauncher. Antarmuka untuk mengizinkan SDK yang mendukung runtime meluncurkan aktivitas. (I5b3dc)

Perbaikan Bug

  • Memperbaiki kondisi race notifyZOrderChanged. Memastikan bahwa penyedia UI diberi tahu untuk semua perubahan urutan Z. Penyedia UI tidak akan diberi tahu secara eksplisit jika urutan Z SandboxedSdkView diubah sebelum openSession dipanggil.

Versi 1.0.0-alpha03

24 Mei 2023

androidx.privacysandbox.ui:ui-client:1.0.0-alpha03, androidx.privacysandbox.ui:ui-core:1.0.0-alpha03, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03 dirilis. Versi 1.0.0-alpha03 berisi commit berikut ini.

Fitur Baru

  • StateChangedListener memberi tahu aplikasi tentang perubahan dalam sesi UI

Perubahan API

  • Menambahkan StateChangedListener untuk menggantikan ErrorConsumer (Icd5d3)

Perbaikan Bug

  • Memperbaiki kondisi perlombaan notifyZOrderChanged sehingga penyedia UI diberi tahu untuk semua perubahan urutan Z

Versi 1.0.0-alpha02

19 April 2023

androidx.privacysandbox.ui:ui-client:1.0.0-alpha02, androidx.privacysandbox.ui:ui-core:1.0.0-alpha02, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02 dirilis. Versi 1.0.0-alpha02 berisi commit berikut.

Perbaikan Bug

  • Pengujian flaking yang dinonaktifkan Pengujian ChangingSandboxedSdkViewLayoutChangesChildLayout

Versi 1.0.0-alpha01

8 Maret 2023

androidx.privacysandbox.ui:ui-client:1.0.0-alpha01, androidx.privacysandbox.ui:ui-core:1.0.0-alpha01, dan androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01 dirilis. Versi 1.0.0-alpha01 berisi commit ini.

Fitur Baru

  • Ini adalah library jetpack baru yang dapat digunakan aplikasi dan SDK yang Didukung Runtime (Privacy Sandbox) untuk memungkinkan aplikasi (klien) menghosting UI apa pun yang disediakan oleh SDK (penyedia).