privacysandbox ui
| Ostatnia aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja Beta | Wersja alfa |
|---|---|---|---|---|
| 20 maja 2025 r. | - | - | - | 1.0.0-alpha16 |
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:
Groovy
dependencies { // Use to implement privacysandbox ui-client implementation "androidx.privacysandbox.ui:ui-client:1.0.0-alpha16" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha16" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha16" }
Kotlin
dependencies { // Use to implement privacysandbox ui-client implementation("androidx.privacysandbox.ui:ui-client:1.0.0-alpha16") // Use to implement privacysandbox ui-core implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha16") // Use to implement privacysandbox ui-provider implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha16") }
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 zagłosować na istniejący problem, klikając przycisk z gwiazdką.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.0
Wersja 1.0.0-alpha16
20 maja 2025 r.
Element androidx.privacysandbox.ui:ui-*:1.0.0-alpha16 został zwolniony. Wersja 1.0.0-alpha16 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano logikę do pomiaru przeszkód na
SandboxedSdkView, która będzie wysyłana w ramachSessionObserver.onUiContainerChanged(), jeśliSandboxedUiAdapterSignalOptions.OBSTRUCTIONSjest uwzględniona w powiązanymSessionObserverFactory.signalOptions. Przeszkody są raportowane w stosunku do widoku.
Zmiany w interfejsie API
- Komponent
SandboxedSdkUizostał przeniesiony z biblioteki ui-client do nowej biblioteki ui-client-compose. - Dodaliśmy logikę do pomiaru przeszkód w kontenerach interfejsu. (I34bea)
Poprawki błędów
- Naprawiono błąd
SandboxedSdkView.setAlpha(), który teraz aktualizuje przezroczystość widoku treści.
Wersja 1.0.0-alpha15
26 marca 2025 r.
Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha15, androidx.privacysandbox.ui:ui-core:1.0.0-alpha15 i androidx.privacysandbox.ui:ui-provider:1.0.0-alpha15 są dostępne. Wersja 1.0.0-alpha15 zawiera te komity.
Nowe funkcje
- Ustaw domyślne uporządkowanie w orientacji Z elementów
SandboxedSdkViewiSandboxedSdkUina „poniżej”, co oznacza, że powierzchnia dostawcy jest teraz umieszczona pod oknem klienta. Dodano obsługę dostawcy interfejsu użytkownika, aby w tym trybie otrzymywał onMotionEventspo otrzymaniu go przez okno klienta. - Dodano pole
signalOptionsdo interfejsuSessionObserverFactory. Możesz użyć tego do zdefiniowania zestawu opcji ciągu znaków, które posłużą do określenia, które sygnały są zbierane w powiązaniu z powiązanymSessionObserver. Początkowy zestaw sygnałów jest zdefiniowany wSandboxedUiAdapterSignalOptions. Jeśli nie ustawisz żadnych opcji sygnału, wywoływane będą tylkoSessionObserver.onSessionOpened()iSessionObserver.onSessionClosed().
Zmiany w interfejsie API
- Zmieniono nazwę
SessionConstantsnaSessionDatawSandboxedUiAdapter.openSession().
Znane problemy
- Gdy pakiet SDK jest wczytany w środowisku wykonawczym SDK, a wartość Z-rzędu
SandboxedSdkViewlubSandboxedSdkUito „above”, gest jest odbierany wyłącznie przez okno dostawcy i nie jest już przenoszony do okna klienta.
Wersja 1.0.0-alpha14
26 lutego 2025 r.
Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha14, androidx.privacysandbox.ui:ui-core:1.0.0-alpha14 i androidx.privacysandbox.ui:ui-provider:1.0.0-alpha14 są dostępne. Wersja 1.0.0-alpha14 zawiera te zatwierdzenia.
Nowe funkcje
- Możesz teraz tworzyć „wspólny interfejs użytkownika”, czyli interfejs, który może zawierać elementy należące do klienta i dostawcy. Udostępnione UI można hostować za pomocą
SharedUiContainer, który rozszerzaViewGroup. Nowe interfejsy API wykorzystują koncepcję zarządzania sesją podobną do tej stosowanej w interfejsachSandboxedSdkViewiSandboxedUiAdapter. - Wszystkie interfejsy API dodane w tej wersji są dostępne pod flagą
SharedUiPresentationApi@RequiresOptIn.
Zmiany w interfejsie API
- Do interfejsu
SharedUiContainerdodano interfejsy API do zarządzania sesjami i rejestracji zasobów. Zarządzanie sesją jest realizowane za pomocąSharedUiAdapterwprowadzonego w tej samej wersji. (Ic60b0) - Dodano
SharedUiContainer, które może hostować interfejs użytkownika należący do klienta i dostawcy. Wszystkie widoki podrzędne umieszcza w lewym górnym rogu. (Ia7310) - Dodano obsługę zgodności wstecznej dla
SharedUiAdapter. (I56d7a) - Dodano
SharedUiAdapterdo zarządzania sesjami kontenerów View, które mogą hostować interfejs użytkownika należący do klienta lub dostawcy. Logika zarządzania sesjami jest podobna do logikiSandboxedUiAdapter. (I501f6)
Poprawki błędów
- Oblicz widoczność podczas wywołania funkcji
onVisibilityAggregated. (I91c69)
Znane problemy
- Gdy
PoolingContainerjest umieszczony wSharedUiContainer,SharedUiContainerzamyka sesję po odłączeniu okna.
Wersja 1.0.0-alpha13
29 stycznia 2025 r.
Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha13, androidx.privacysandbox.ui:ui-core:1.0.0-alpha13 i androidx.privacysandbox.ui:ui-provider:1.0.0-alpha13 są dostępne. Wersja 1.0.0-alpha13 zawiera te komity.
Nowe funkcje
- Dodano obiekt Composable o nazwie
SandboxedSdkUi, który można wykorzystać do wyświetlania treści zewnętrznych w interfejsie Compose. Obiekt ten korzysta z dotychczasowych koncepcjiSandboxedSdkViewdotyczących zarządzania sesją i detektorów zdarzeń. (I009cf) - Zmieniliśmy podpis
SandboxedUiAdapter.openSession, aby zawierał nowy parametrSessionConstants, który zastępuje poprzedniwindowInputToken. Ten parametr służy do przekazywania wartości, które będą stałe przez cały czas działaniaSandboxedUiAdapter.Session. (Ibc0df, I28435)
Znane problemy
- Gdy użytkownik przewija element
SandboxedSdkUi, nie są wysyłane zdarzeniaSessionObserver. SandboxedSdkUinie jest przycinany przez widoki nadrzędne, gdy jest w trybie Z-above.
Zmiany w interfejsie API
- Usuń przestarzały kod
SDKActivityLauncher(I49a4f) - Logikę rejestracji fabryki obserwatorów oddzielono od
SandboxedUiAdapter, dodając nowy interfejsSessionObserverFactoryRegistry. (I245cc)
Wersja 1.0.0-alpha12
11 grudnia 2024 r.
Funkcje androidx.privacysandbox.ui:ui-client:1.0.0-alpha12, androidx.privacysandbox.ui:ui-core:1.0.0-alpha12 i androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12 są dostępne. Wersja 1.0.0-alpha12 zawiera te komity.
Nowe funkcje
- Zawartość komórki
StateChangedListenerzostała zastąpiona tekstemSandboxedSdkViewEventListener. Ten detektor zdarzeń może być używany do nasłuchiwania zdarzeń wyświetlania interfejsu użytkownika, zamykania sesji i błędów sesji.
Zmiany w interfejsie API
- Dodaje
SandboxedSdkViewEventListenerdo nasłuchiwania zdarzeń interfejsu użytkownika w komponencieSandboxedSdkView. Ta wersja usuwa teżStateChangedListener. (Id71ea)
Poprawki błędów
- Usunięto z
SandboxedSdkViewlogikę ograniczania zakresu. Jeśli elementSandboxedSdkViewzostanie umieszczony w przewijanym kontenerze, a funkcjaorderProviderUiAboveClientUi(false)nie zostanie wywołana (do czasu naprawienia błędu w podstawowym frameworku), może to spowodować problemy z UX. (Id420d) - Naprawiono błąd
RemoteException, który mógł wystąpić, jeśli proces zdalny uległ awarii podczas korzystania z funkcjiDelegatingSandboxedUiAdapter.
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-alpha11 i androidx.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 interfejsSandboxedUiAdapteri może służyć do delegowania zadań między różnymiSandboxedUiAdapters. 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 bieżącej sesji i utworzenie nowejSandboxedUiAdapter.Sessiondla nowego delegata. Dzięki temu można płynnie przechodzić między delegatami. (I5f1c5, I9e3e7) - Dodano lepszą obsługę
SandboxedSdkViewdla 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-alpha10 i androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10 są dostępne. Wersja 1.0.0-alpha10 zawiera te komity.
Nowe funkcje
- Zmieniliśmy logikę otwierania sesji, aby otwierać sesję w
SandboxedSdkViewtylko wtedy, gdy okno zSandboxedSdkViewjest widoczne. - Zaktualizowano logikę
SessionObserver, aby wysyłaćonUiContainerChanged, gdy widoczność okna zawierającegoSandboxedSdkViewsię zmienia.
Poprawki błędów
- Wywołanie
onUiContainerChangedpo 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, gdy korzystasz z R8 z AGP 7.3 lub nowszej wersji (np. R8 w wersji 3.3) oraz we wszystkich wersjach kompilacji, gdy korzystasz z AGP 8.1 lub nowszej wersji (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-alpha09 i androidx.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
AbstractSandboxedUiAdapteriAbstractSandboxedUiAdapter.AbstractSession, których dostawcy interfejsu użytkownika mogą używać, aby uniknąć implementowania całych interfejsówSandboxedUiAdapterlubSession. Dostawcom interfejsu użytkownika zalecamy używanie tych abstrakcyjnych klas. - Dodano logikę
registerObserverFactory, która umożliwia dołączenieSessionObserverFactorydoSandboxedUiAdapter. GdySessionObserverFactoryzostanie podłączony do adaptera, dla każdej nowej sesji interfejsu użytkownika utworzonej dla tego adaptera zostanie utworzonySessionObserver. Po utworzeniuSessionObserverzostanie wywołana funkcjaonSessionOpened, gdy otworzysz sesję interfejsu użytkownika. Gdy widok interfejsuSessionulegnie zmianie, zostanie wywołana funkcjaSessionObserver.onUiContainerChanged. FunkcjaonUiContainerChangedjest ograniczana i będzie wywoływana najwyżej co 200 ms. - Dodano
SandboxedSdkViewUiInfo, które można utworzyć na podstawieBundlewysłanego wSessionObserver.onUiContainerChanged. Ten obiekt reprezentuje stan interfejsuSandboxedSdkView, który hostuje sesję interfejsu. Zawiera informacje o wysokości i szerokości,Rectreprezentują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.onUiContainerChangediSandboxedSdkViewUiInfo. (Ie98bc) - Dodaj interfejs
SessionObserveri logikę rejestracji. (I047dc) - Dodaj
AbstractSandboxedUiAdapteriAbstractSession. (I3617a)
Znane problemy
- Gdy dostawca interfejsu użytkownika jest w tym samym procesie co aplikacja klienta,
SessionObserver.onUiContainerChangednie 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-alpha08 i androidx.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 elementu
SandboxedSdkVieww elementachPoolingContainer, takich jakRecyclerView. JeśliSandboxedSdkViewma element nadrzędny, który jest elementemPoolingContainer, cykl życia sesji interfejsu użytkownika będzie zgodny z cyklem życia elementuPoolingContainer, 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
ViewGroupsw trybie zgodności wstecznej. (I8de92) - Jeśli jeden z rodziców
SandboxedSdkViewtoPoolingContainer, zamknij sesję interfejsu użytkownika, gdyPoolingContainerwskaże, że zasoby mogą zostać zwolnione, a nie w momencie odłączenia okna. (I2046b)
Darowizna zewnętrzna
- Środowisko wykonawcze
GestureDetectorCompatzostało wycofane, ponieważ środowiskoGestureDetectorjest dostępne wminSdk. (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-alpha07 i androidx.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-alpha06 i androidx.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
SandboxedSdkViewdo „ograniczającego” widoku, w którym może się ona przewijać. Dzięki temu zawartośćSandboxedSdkViewnie 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.setZOrderOnTopAndEnableUserInteractionnaorderProviderUiAboveClientUi(Iecb7e)
Poprawki błędów
- Prześlij hostowi 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-alpha05 i androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05 są dostępne. Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano logikę przenoszenia punktu dotykowego do hosta podczas przewijania i gestyk gestu 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
windowInputTokendo kolekcjiSandboxedUiAdapter(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
windowInputTokendoSandboxedUiAdapter. Jest to konieczne, aby tokenSurfaceControlViewHostbył prawidłowo powiązany z hostem zaimplementowanej hierarchii. (Ief578) - Uruchom
notifyResizedw wątku głównym. (I62440) - Napraw błędy powodujące awarię 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-alpha04 i androidx.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 elementuSandboxedSdkViewzostanie 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-alpha03 i androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03 są dostępne. Wersja 1.0.0-alpha03 zawiera te commity.
Nowe funkcje
StateChangedListenerinformuje 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-alpha02 i androidx.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-alpha01 i androidx.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).