privacysandbox ui

  
TODO
Ostatnia aktualizacja Wersja stabilna Wersja kandydująca Wersja Beta Wersja alfa
13 listopada 2024 r. - - - 1.0.0-alpha11

Deklarowanie zależności

Aby dodać zależność od privacysandbox-ui, musisz dodać repozytorium Maven Google do projektu. Więcej informacji znajdziesz w repozytorium Maven firmy Google.

Dodaj zależności dla artefaktów, których potrzebujesz, w pliku build.gradle aplikacji lub modułu:

Odlotowe

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

    
}

Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.

Opinia

Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli zauważysz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nowy problem, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk z gwiazdką.

Tworzenie nowego zgłoszenia

Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.

Wersja 1.0

Wersja 1.0.0-alpha11

13 listopada 2024 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha11, androidx.privacysandbox.ui:ui-core:1.0.0-alpha11androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11 są dostępne. Wersja 1.0.0-alpha11 zawiera te zatwierdzenia.

Nowe funkcje

  • Wprowadziliśmy eksperymentalny interfejs API DelegatingSandboxedUiAdapter, który rozszerza interfejs SandboxedUiAdapter i może służyć do delegowania zadań między różnymi SandboxedUiAdapters. Gdy ten adapter jest ustawiony w kontenerze klienta, np. SandboxedSdkView, adapter delegujący może zmienić adapter delegowany za pomocą updateDelegate. Spowoduje to zamknięcie istniejącej sesji i utworzenie nowej SandboxedUiAdapter.Session dla nowego delegata. Dzięki temu można płynnie przechodzić między delegatami. (I5f1c5, I9e3e7)
  • Dodano lepszą obsługę SandboxedSdkView dla wypełnień. (Ic414f)

Poprawki błędów

  • Rozwiązano błąd NullPointerException, który mógł występować w przypadku zdarzenia globalnego układu.

Wersja 1.0.0-alpha10

18 września 2024 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha10, androidx.privacysandbox.ui:ui-core:1.0.0-alpha10androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10 są dostępne. Wersja 1.0.0-alpha10 zawiera te zatwierdzenia.

Nowe funkcje

  • Zmieniliśmy logikę otwierania sesji, aby otwierać sesję w SandboxedSdkView tylko wtedy, gdy okno z SandboxedSdkView jest widoczne.
  • Zaktualizowano logikę SessionObserver, aby wysyłać onUiContainerChanged, gdy widoczność okna zawierającego SandboxedSdkView się zmienia.

Poprawki błędów

  • Wywołanie onUiContainerChanged po zmianie widoczności okna (I541cf)
  • Usunięto ręczne określanie dostępu do nowych interfejsów API platformy, ponieważ odbywa się to automatycznie za pomocą modelowania interfejsu API podczas korzystania z R8 z AGP 7.3 lub nowszym (np. R8 w wersji 3.3) oraz dla wszystkich kompilacji podczas korzystania z AGP 8.1 lub nowszego (np. D8 w wersji 8.1). Klienci, którzy nie korzystają z AGP, powinni zaktualizować D8 do wersji 8.1 lub nowszej. Więcej szczegółów znajdziesz w tym artykule. (If6b4c, b/345472586)

Wersja 1.0.0-alpha09

26 czerwca 2024 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha09, androidx.privacysandbox.ui:ui-core:1.0.0-alpha09androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09 są dostępne. Wersja 1.0.0-alpha09 zawiera te komity.

Nowe funkcje

  • Wprowadziliśmy abstrakcyjne klasy AbstractSandboxedUiAdapterAbstractSandboxedUiAdapter.AbstractSession, których dostawcy interfejsu użytkownika mogą używać, aby uniknąć implementowania całych interfejsów SandboxedUiAdapter lub Session. Dostawcom interfejsu użytkownika zalecamy używanie tych abstrakcyjnych klas.
  • Dodano logikę registerObserverFactory, która umożliwia dołączenie SessionObserverFactory do SandboxedUiAdapter. Gdy SessionObserverFactory zostanie podłączony do adaptera, dla każdej nowej sesji interfejsu utworzonej dla tego adaptera zostanie utworzony SessionObserver. Po utworzeniu SessionObserver zostanie wywołana funkcja onSessionOpened, gdy otworzysz sesję interfejsu użytkownika. Gdy interfejs Session ulegnie zmianie, zostanie wywołana funkcja SessionObserver.onUiContainerChanged. Funkcja onUiContainerChanged jest ograniczana i będzie wywoływana najwyżej co 200 ms.
  • Dodano SandboxedSdkViewUiInfo, które można utworzyć na podstawie Bundle wysłanego w SessionObserver.onUiContainerChanged. Ten obiekt reprezentuje stan interfejsu SandboxedSdkView, który hostuje sesję interfejsu. Zawiera informacje o wysokości i szerokości, Rect reprezentujący geometrię widoku widocznego na ekranie oraz wskazówkę dotyczącą przezroczystości, która reprezentuje przezroczystość widoku.

Zmiany w interfejsie API

  • Dodaj podpowiedź dotyczącą przezroczystości do SandboxedSdkViewUiInfo. (I093ac)
  • Dodaj SessionObserver.onUiContainerChangedSandboxedSdkViewUiInfo. (Ie98bc)
  • Dodaj interfejs SessionObserver i logikę rejestracji. (I047dc)
  • Dodaj AbstractSandboxedUiAdapterAbstractSession. (I3617a)

Znane problemy

  • Gdy dostawca interfejsu użytkownika jest w tym samym procesie co aplikacja klienta, SessionObserver.onUiContainerChanged nie jest wysyłany podczas przewijania kontenera.

Wersja 1.0.0-alpha08

14 maja 2024 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha08, androidx.privacysandbox.ui:ui-core:1.0.0-alpha08androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08 są dostępne. Wersja 1.0.0-alpha08 zawiera te komity.

Nowe funkcje

  • Dodaliśmy obsługę korzystania z wartości SandboxedSdkView w ramach elementu PoolingContainer, np. RecyclerView. Jeśli element SandboxedSdkView ma element nadrzędny, który jest elementem PoolingContainer, cykl życia sesji interfejsu użytkownika będzie zgodny z cyklem życia elementu PoolingContainer, aby zapewnić, że sesja będzie trwała pomimo odłączenia okna.

Zmiany w interfejsie API

  • Wycofane interfejsy API Piaskownicy prywatności dotyczące aktywności. Te interfejsy API można teraz znaleźć w specjalnej bibliotece Aktywność androidx.privacysandbox.activity. (I68beb)

Poprawki błędów

  • Naprawiliśmy błąd związany z renderowaniem podczas wyświetlania treści zdalnych w kontenerach z pulą. (I804df)
  • Naprawiono błąd, który powodował problemy z renderowaniem w trybie zgodności wstecznej w przypadku ViewGroups. (I8de92)
  • Jeśli jeden z rodziców SandboxedSdkView to PoolingContainer, zamknij sesję interfejsu użytkownika, gdy PoolingContainer wskaże, że zasoby mogą zostać zwolnione, a nie w momencie odłączenia okna. (I2046b)

Darowizna zewnętrzna

  • Środowisko wykonawcze GestureDetectorCompat zostało wycofane, ponieważ środowisko GestureDetector jest dostępne w minSdk. (Icc4cd)

Wersja 1.0.0-alpha07

18 października 2023 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha07, androidx.privacysandbox.ui:ui-core:1.0.0-alpha07androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07 są dostępne. Wersja 1.0.0-alpha07 zawiera te commity.

Nowe funkcje

  • Dodano obsługę zgodności wstecznej biblioteki. W wersji 33 i starszych interfejsu API widok dostawcy będzie renderowany w ramach procesu aplikacji w ramach innego ładowarki klas. (If0b7a)
  • Dodaliśmy logikę, która pozwala na zmianę rozmiaru kontenerów hosta i dostawcy w tym samym okienku, aby uniknąć widocznych zakłóceń interfejsu. (Ic2cd9)

Zmiany w interfejsie API

  • MinSdk dla biblioteki został podniesiony do poziomu API 21. (I474b8)

Wersja 1.0.0-alpha06

20 września 2023 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha06, androidx.privacysandbox.ui:ui-core:1.0.0-alpha06androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06 są dostępne. Wersja 1.0.0-alpha06 zawiera te commity.

Nowe funkcje

  • Dodano logikę do przycinania SandboxedSdkView do „ograniczającego elementu nadrzędnego” widoku, w którym może się on przewijać. Dzięki temu zawartość SandboxedSdkView nie zasłania innych widoków ani żadnych elementów interfejsu poza widokiem treści wyższego poziomu. (I9ea94)

Zmiany w interfejsie API

  • Zmień nazwę SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction na orderProviderUiAboveClientUi (Iecb7e)

Poprawki błędów

  • Prześlij do hosta prawidłową wartość kolejności Z. (Ib0ddf)
  • Przenoszenie punktu dotykowego tylko w przypadku przewijania lub przesuwania w pionie. (I0528c)

Wersja 1.0.0-alpha05

9 sierpnia 2023 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha05, androidx.privacysandbox.ui:ui-core:1.0.0-alpha05androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05 są dostępne. Wersja 1.0.0-alpha05 zawiera te commity.

Nowe funkcje

  • Dodano logikę przenoszenia punktu dotykowego do hosta podczas przewijania i gestyk gestu pochodzących z SandboxedSdkView. Dzięki temu interfejs użytkownika dostawcy hostingu kontenera z przewijaniem klienta może prawidłowo reagować na przewijanie i gesty przesuwania.

Zmiany w interfejsie API

  • Dodano parametr windowInputToken do kolekcji SandboxedUiAdapter (Ief578)

Poprawki błędów

  • Ustaw stan sesji na Aktywna po pierwszym losowaniu (I36f3f)
  • Rozwiąż problem z układem w przypadku SandboxedSdkView. (I09cb8)
  • Dodano logikę przenoszenia punktu dotykowego na hosta. (I33b54)
  • Dodaj parametr windowInputToken do SandboxedUiAdapter. Jest to konieczne, aby token SurfaceControlViewHost był prawidłowo powiązany z hostem zaimplementowanej hierarchii. (Ief578)
  • Uruchom notifyResized w głównym wątku. (I62440)
  • Naprawianie błędu w procesie Session.close(). (I5392e)

Wersja 1.0.0-alpha04

21 czerwca 2023 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha04, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04 są dostępne. Wersja 1.0.0-alpha04 zawiera te commity.

Nowe funkcje

  • Przedstaw SdkActivityLauncher. Interfejs umożliwiający uruchamianie działań przez pakiety SDK używanych w czasie działania. (I5b3dc)

Poprawki błędów

  • Napraw sytuację wyścigu notifyZOrderChanged. Zapewnienie dostawcy interfejsu powiadomień o wszystkich zmianach w kolejności Z. Dostawca interfejsu użytkownika nie zostanie wyraźnie powiadomiony, jeśli kolejność Z elementu SandboxedSdkView zostanie zmieniona przed wywołaniem openSession.

Wersja 1.0.0-alpha03

24 maja 2023 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha03, androidx.privacysandbox.ui:ui-core:1.0.0-alpha03androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03 są dostępne. Wersja 1.0.0-alpha03 zawiera te commity.

Nowe funkcje

  • StateChangedListener informuje aplikację o zmianach w sesji interfejsu użytkownika

Zmiany w interfejsie API

  • Dodano StateChangedListener, aby zastąpić ErrorConsumer (Icd5d3).

Poprawki błędów

  • Usunięto warunek wyścigu notifyZOrderChanged, aby dostawca interfejsu użytkownika był powiadamiany o wszystkich zmianach w kolejności Z.

Wersja 1.0.0-alpha02

19 kwietnia 2023 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha02, androidx.privacysandbox.ui:ui-core:1.0.0-alpha02androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02 są dostępne. Wersja 1.0.0-alpha02 zawiera te commity.

Poprawki błędów

  • Wyłączony test z niepewnym wynikiem ChangingSandboxedSdkViewLayoutChangesChildLayout

Wersja 1.0.0-alpha01

8 marca 2023 r.

Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha01, androidx.privacysandbox.ui:ui-core:1.0.0-alpha01androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01 są dostępne. Wersja 1.0.0-alpha01 zawiera te commity.

Nowe funkcje

  • Są to nowe biblioteki Jetpacka, których mogą używać aplikacje i pakiety SDK z włączonym środowiskiem wykonawczym (Piaskownicą prywatności), aby umożliwić aplikacji (klientowi) hostowanie dowolnego interfejsu użytkownika udostępnianego przez pakiet SDK (dostawca).