interfejs Piaskownicy prywatności
| Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja Alfa |
|---|---|---|---|---|
| 17 grudnia 2025 r. | - | - | - | 1.0.0-alpha17 |
Deklarowanie zależności
Aby dodać zależność od privacysandbox-ui, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w artykule Repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów 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-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") }
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 odkryjesz 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. Aby oddać głos na istniejący problem, kliknij przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.0
Wersja 1.0.0-alpha17
17 grudnia 2025 r.
Publikacja androidx.privacysandbox.ui:ui-*:1.0.0-alpha17 Wersja 1.0.0-alpha17 zawiera te zmiany.
- Ta biblioteka została wycofana i nie będzie już aktualizowana.
Zmiany w interfejsie API
- Wycofanie interfejsów API privacysandbox.ui (I858d5, b/452878636)
- Zmiana minSdk z interfejsu API 21 na 23 (Ifa120, b/380448311)
- Oddzielenie eksperymentalnego interfejsu SandboxedSdkUi od nieeksperymentalnego. (Ie9154, b/430118542)
- SdkSandboxControllerCompat przeniesiono do sdkruntime-provider (Id99fb, b/426122358)
- Aplikacja klienta nie może zmienić poziomu Z interfejsu dostawcy względem okna klienta za pomocą SandboxedSdkView ani SandboxedSdkUi. (I87e9f, b/413659157)
Poprawki błędów
- Przeniesienie domyślnego
minSdkz API 21 do API 23 (Ibdfca, b/380448311, b/435705964, b/435705223) - Dodaliśmy obsługę
PoolingContainerw zarządzaniu sesjami: sesja udostępnionego interfejsu nie jest zamykana, jeśli kontener znajduje się wPoolingContainer.SharedUiContainer(Iabe16, b/352500350)
Wersja 1.0.0-alpha16
20 maja 2025 r.
Publikacja androidx.privacysandbox.ui:ui-*:1.0.0-alpha16 Wersja 1.0.0-alpha16 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy logikę pomiaru przeszkód na
SandboxedSdkView, która będzie wysyłana wSessionObserver.onUiContainerChanged(), jeśliSandboxedUiAdapterSignalOptions.OBSTRUCTIONSjest uwzględniony w powiązanymSessionObserverFactory.signalOptions. Przeszkody są zgłaszane w odniesieniu do samego widoku.
Zmiany w interfejsie API
- Przeniesiono
SandboxedSdkUiz ui-client do nowej biblioteki ui-client-compose. - Dodaliśmy logikę pomiaru przeszkód w kontenerach interfejsu. (I34bea)
Poprawki błędów
- Naprawiono
SandboxedSdkView.setAlpha(), który teraz aktualizuje wartość alfa widoku treści.
Wersja 1.0.0-alpha15
26 marca 2025 r.
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ą zwalniane. Wersja 1.0.0-alpha15 zawiera te zmiany.
Nowe funkcje
- Ustaw domyślne kolejność osi Z dla elementów
SandboxedSdkViewiSandboxedSdkUina „below” (poniżej), co oznacza, że powierzchnia dostawcy jest teraz umieszczona poniżej okna klienta. Dodano obsługę dostawcy interfejsu, który w tym trybie otrzymuje wartośćMotionEventspo jej otrzymaniu przez okno klienta. - Dodano pole
signalOptionsdo interfejsuSessionObserverFactory. Można go użyć do zdefiniowania zestawu opcji typu String, które będą używane do określania, które sygnały są zbierane w przypadku powiązanegoSessionObserver. Początkowy zestaw sygnałów jest zdefiniowany wSandboxedUiAdapterSignalOptions. Jeśli nie ustawisz żadnych opcji sygnałów, wywoływane będą tylko funkcjeSessionObserver.onSessionOpened()iSessionObserver.onSessionClosed().
Zmiany w interfejsie API
- Zmieniono nazwę
SessionConstantsnaSessionDatawSandboxedUiAdapter.openSession().
Znane problemy
- Gdy pakiet SDK jest wczytywany w środowisku wykonawczym SDK, a kolejność Z-ową
SandboxedSdkViewlubSandboxedSdkUijest ustawiona na „powyżej”, gest jest odbierany wyłącznie przez okno dostawcy i nie jest już przekazywany do okna klienta.
Wersja 1.0.0-alpha14
26 lutego 2025 r.
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ą zwalniane. Wersja 1.0.0-alpha14 zawiera te zmiany.
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ępniony interfejs może być hostowany za pomocą
SharedUiContainer, który rozszerzaViewGroup. Nowe interfejsy API wykorzystują koncepcję zarządzania sesjami podobną do tej w przypadkuSandboxedSdkViewiSandboxedUiAdapter. - Wszystkie interfejsy API dodane w tej wersji są oznaczone flagą
SharedUiPresentationApi@RequiresOptIn.
Zmiany w interfejsie API
- Dodano interfejsy API zarządzania sesjami i rejestracji komponentów do
SharedUiContainer. Zarządzanie sesjami jest realizowane za pomocą interfejsuSharedUiAdapterwprowadzonego w tej samej wersji. (Ic60b0) - Dodano
SharedUiContainer, które mogą hostować interfejs użytkownika należący do klienta i dostawcy. Umieszcza wszystkie widoki podrzędne w lewym górnym rogu. (Ia7310) - Dodaliśmy obsługę zgodności wstecznej z
SharedUiAdapter. (I56d7a) - Dodano
SharedUiAdapterdo zarządzania sesjami kontenerów widoku, które mogą hostować interfejs użytkownika należący do klienta i dostawcy. Logika zarządzania sesjami jest podobna do logikiSandboxedUiAdapter. (I501f6)
Poprawki błędów
- Oblicz widoczność, gdy wywoływana jest funkcja
onVisibilityAggregated. (I91c69)
Znane problemy
- Jeśli element
PoolingContainerznajduje się wewnątrz elementuSharedUiContainer, sesja zostanie zamknięta po odłączeniu okna.
Wersja 1.0.0-alpha13
29 stycznia 2025 r.
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ą zwalniane. Wersja 1.0.0-alpha13 zawiera te zmiany.
Nowe funkcje
- Dodano obiekt kompozycyjny o nazwie
SandboxedSdkUi, który może służyć do wyświetlania treści zdalnych w interfejsie Compose. Ten obiekt wykorzystuje istniejące koncepcjeSandboxedSdkViewdotyczące zarządzania sesjami i detektorów zdarzeń. (I009cf) - Zmieniliśmy sygnaturę
SandboxedUiAdapter.openSession, aby uwzględnić nowy parametrSessionConstants, który zastępuje poprzedni parametrwindowInputToken. Ten parametr służy do przekazywania wartości, które będą stałe przez cały okres istnieniaSandboxedUiAdapter.Session. (Ibc0df, I28435)
Znane problemy
- Zdarzenia
SessionObservernie są wysyłane w przypadkuSandboxedSdkUi, gdy jest on przewijany. SandboxedSdkUinie jest przycinany przez widoki nadrzędne, gdy jest w trybie Z-above.
Zmiany w interfejsie API
- Usuwanie wycofanego kodu
SDKActivityLauncher(I49a4f) - Oddzielono logikę rejestracji fabryki obserwatorów od
SandboxedUiAdapter, dodając nowy interfejsSessionObserverFactoryRegistry. (I245cc)
Wersja 1.0.0-alpha12
11 grudnia 2024 r.
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ą zwalniane. Wersja 1.0.0-alpha12 zawiera te zmiany.
Nowe funkcje
- Tekst
StateChangedListenerzostał zastąpiony tekstemSandboxedSdkViewEventListener. Ten detektor zdarzeń może służyć do nasłuchiwania zdarzeń związanych z wyświetlaniem interfejsu, zamknięciem sesji i błędami sesji.
Zmiany w interfejsie API
- Dodaje
SandboxedSdkViewEventListenerdo nasłuchiwania zdarzeń interfejsu wSandboxedSdkView. Ta wersja usuwa teżStateChangedListener. (Id71ea)
Poprawki błędów
- Usunięto logikę granic przycinania z
SandboxedSdkView. Jeśli elementSandboxedSdkViewznajduje się w kontenerze z możliwością przewijania, a funkcjaorderProviderUiAboveClientUi(false)nie została wywołana (do czasu naprawienia błędu w bazowej platformie), może to powodować problemy z UX. (Id420d) - Naprawiono
RemoteException, które mogło wystąpić, jeśli proces zdalny zakończył się podczas korzystania zDelegatingSandboxedUiAdapter.
Wersja 1.0.0-alpha11
13 listopada 2024 r.
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ą zwalniane. Wersja 1.0.0-alpha11 zawiera te zmiany.
Nowe funkcje
- Wprowadziliśmy eksperymentalny interfejs API
DelegatingSandboxedUiAdapter, który rozszerza interfejsSandboxedUiAdapteri może być używany do delegowania 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 dotychczasowej sesji i utworzenie nowegoSandboxedUiAdapter.Sessiondla nowego pełnomocnika. Umożliwia to płynne przechodzenie między delegatami. (I5f1c5, I9e3e7) - Dodaliśmy lepszą obsługę
SandboxedSdkViewdopełnienia. (Ic414f)
Poprawki błędów
- Naprawiono błąd
NullPointerException, który mógł wystąpić w przypadku wydarzenia z układem globalnym.
Wersja 1.0.0-alpha10
18 września 2024 r.
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ą zwalniane. Wersja 1.0.0-alpha10 zawiera te zmiany.
Nowe funkcje
- Zaktualizowano logikę otwierania sesji, aby otwierać sesję w
SandboxedSdkViewtylko wtedy, gdy okno zawierająceSandboxedSdkViewjest widoczne. - Zaktualizowano logikę
SessionObserver, aby wysyłaćonUiContainerChanged, gdy zmienia się widoczność okna zawierającego elementSandboxedSdkView.
Poprawki błędów
- Wywoływanie
onUiContainerChanged, gdy zmienia się widoczność okna (I541cf) - Usunęliśmy 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 w przypadku wszystkich kompilacji podczas korzystania z AGP 8.1 lub nowszego (np. D8 w wersji 8.1). Klientom, którzy nie korzystają z AGP, zalecamy przejście na D8 w 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.
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ą zwalniane. Wersja 1.0.0-alpha09 zawiera te zmiany.
Nowe funkcje
- Wprowadzono klasy abstrakcyjne
AbstractSandboxedUiAdapteriAbstractSandboxedUiAdapter.AbstractSession, których dostawcy interfejsu użytkownika mogą używać, aby uniknąć implementowania całych interfejsówSandboxedUiAdapterlubSession. Dostawcy interfejsu użytkownika powinni korzystać z tych klas abstrakcyjnych. - Dodaliśmy logikę
registerObserverFactory, która umożliwia dołączenieSessionObserverFactorydoSandboxedUiAdapter. Gdy do adaptera zostanie dołączony elementSessionObserverFactory, dla każdej nowej sesji interfejsu utworzonej dla tego adaptera zostanie utworzony elementSessionObserver. UtworzonySessionObserverotrzyma wywołanie zwrotneonSessionOpenedpo otwarciu sesji interfejsu. Gdy zmieni się prezentacja interfejsu widokuSession, zostanie wywołana funkcjaSessionObserver.onUiContainerChanged.onUiContainerChangedjest ograniczony i będzie wywoływany maksymalnie co 200 ms. - Dodano
SandboxedSdkViewUiInfo, które można utworzyć na podstawieBundlewysłanych wSessionObserver.onUiContainerChanged. Ten obiekt reprezentuje stan interfejsuSandboxedSdkView, który hostuje sesję interfejsu. Zawiera informacje o wysokości i szerokości, symbolRectreprezentują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ą krycia do elementu
SandboxedSdkViewUiInfo. (I093ac) - Dodaj
SessionObserver.onUiContainerChangediSandboxedSdkViewUiInfo. (Ie98bc) - Dodaj interfejs
SessionObserveri logikę rejestracji. (I047dc) - Dodaj
AbstractSandboxedUiAdapteriAbstractSession. (I3617a)
Znane problemy
- Gdy dostawca interfejsu 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.
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ą zwalniane. Wersja 1.0.0-alpha08 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy obsługę używania elementu
SandboxedSdkVieww elemenciePoolingContainer, np. w elemencieRecyclerView. GdySandboxedSdkViewma element nadrzędny, który jestPoolingContainer, cykl życia sesji interfejsu użytkownika będzie zgodny z cyklem życiaPoolingContainer, aby sesja mogła być kontynuowana po odłączeniu okna.
Zmiany w interfejsie API
- Wycofane interfejsy API Piaskownicy prywatności dotyczące aktywności. Te interfejsy API znajdziesz teraz w specjalnej bibliotece aktywności
androidx.privacysandbox.activity. (I68beb)
Poprawki błędów
- Naprawiliśmy błąd renderowania podczas wyświetlania treści zdalnych w kontenerach puli. (I804df)
- Naprawiono błąd, który powodował problemy z renderowaniem znaku
ViewGroupsw trybie zgodności wstecznej. (I8de92) - Jeśli jednym z rodziców elementu
SandboxedSdkViewjest elementPoolingContainer, zamknij sesję interfejsu, gdy elementPoolingContainerwskaże, że można zwolnić zasoby, a nie po odłączeniu okna. (I2046b)
Wkład zewnętrzny
- Usługa
GestureDetectorCompatzostała wycofana, ponieważ usługaGestureDetectorjest dostępna wminSdk. (Icc4cd)
Wersja 1.0.0-alpha07
18 października 2023 r.
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ą zwalniane. Wersja 1.0.0-alpha07 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano obsługę zgodności wstecznej biblioteki. Na interfejsie API w wersji 33 i starszych widok dostawcy będzie renderowany w procesie aplikacji w innym programie ładującym klasy. (If0b7a)
- Dodaliśmy logikę, która umożliwia zatwierdzanie zmiany rozmiaru kontenerów hosta i dostawcy w tej samej ramce, aby uniknąć widocznych problemów z interfejsem. (Ic2cd9)
Zmiany w interfejsie API
- Minimalny pakiet SDK dla biblioteki został podniesiony do API 21. (I474b8)
Wersja 1.0.0-alpha06
20 września 2023 r.
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ą zwalniane. Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano logikę przycinania elementu
SandboxedSdkViewdo „elementu nadrzędnego ograniczającego”, w którym można go przewijać. Dzięki temu zawartość elementuSandboxedSdkViewnie zasłania innych widoków ani komponentów interfejsu poza widokiem treści głównej. (I9ea94)
Zmiany w interfejsie API
- Zmiana nazwy
SandboxedSdkView.setZOrderOnTopAndEnableUserInteractionnaorderProviderUiAboveClientUi(Iecb7e)
Poprawki błędów
- Prześlij do hosta prawidłową wartość kolejności nakładania elementów. (Ib0ddf)
- Przenoszenie fokusu dotykowego tylko w przypadku przewijania/przesuwania w pionie. (I0528c)
Wersja 1.0.0-alpha05
9 sierpnia 2023 r.
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ą zwalniane. Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano logikę przenoszenia fokusu dotykowego na hosta podczas gestów przewijania i szybkiego przesuwania pochodzących z
SandboxedSdkView. Dzięki temu interfejs dostawcy kontenera z możliwością przewijania po stronie klienta będzie prawidłowo reagować na przewijanie i przesuwanie.
Zmiany w interfejsie API
- Dodano parametr
windowInputTokendoSandboxedUiAdapter(Ief578)
Poprawki błędów
- Ustaw stan sesji na Aktywny po pierwszym losowaniu (I36f3f)
- Rozwiąż problem z układem w przypadku
SandboxedSdkView. (I09cb8) - Dodano logikę przenoszenia zaznaczenia dotykowego na hosta. (I33b54)
- Dodaj parametr
windowInputTokendo parametruSandboxedUiAdapter. Jest to konieczne, aby zapewnić prawidłowe powiązanie tokenaSurfaceControlViewHostz hostem hierarchii zagnieżdżonej. (Ief578) - Uruchom
notifyResizedw wątku głównym. (I62440) - Naprawiliśmy błąd powodujący awarię w przepływie
Session.close(). (I5392e)
Wersja 1.0.0-alpha04
21 czerwca 2023 r.
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ą zwalniane. Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Nowe funkcje
- Przedstaw
SdkActivityLauncher. Interfejs umożliwiający pakietom SDK z włączonym środowiskiem wykonawczym uruchamianie aktywności. (I5b3dc)
Poprawki błędów
- Naprawiono
notifyZOrderChangedsytuację wyścigu. Gwarantuje, że dostawca interfejsu użytkownika zostanie powiadomiony o wszystkich zmianach kolejności Z. Dostawca interfejsu nie otrzyma wyraźnego powiadomienia, jeśli kolejność Z-ową elementuSandboxedSdkViewzostanie zmieniona przed wywołaniem openSession.
Wersja 1.0.0-alpha03
24 maja 2023 r.
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ą zwalniane. Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
StateChangedListenerinformuje aplikację o zmianach w sesji interfejsu.
Zmiany w interfejsie API
- Dodano
StateChangedListenerw miejsce elementuErrorConsumer(Icd5d3)
Poprawki błędów
- Naprawiono
notifyZOrderChangedwyścig, aby dostawca interfejsu użytkownika był powiadamiany o wszystkich zmianach kolejności Z.
Wersja 1.0.0-alpha02
19 kwietnia 2023 r.
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ą zwalniane. Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Poprawki błędów
- Wyłączony test z niepewnym wynikiemChangingSandboxedSdkViewLayoutChangesChildLayout
Wersja 1.0.0-alpha01
8 marca 2023 r.
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ą zwalniane. Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Są to nowe biblioteki Jetpack, których aplikacje i pakiety SDK z włączonym środowiskiem wykonawczym (Piaskownica prywatności) mogą używać, aby umożliwić aplikacji (klientowi) hostowanie dowolnego interfejsu dostarczonego przez pakiet SDK (dostawcę).