privacysandbox ui
| 최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
|---|---|---|---|---|
| 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을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.0
버전 1.0.0-alpha17
2025년 12월 17일
androidx.privacysandbox.ui:ui-*:1.0.0-alpha17이 출시되었습니다. 버전 1.0.0-alpha17에는 이러한 커밋이 포함되어 있습니다.
- 이 라이브러리는 지원 중단되었으며 향후 업데이트가 제공되지 않습니다.
API 변경사항
- privacysandbox.ui API 지원 중단 (I858d5, b/452878636)
- minSdk이 API 21에서 23으로 변경됨 (Ifa120, b/380448311)
- 실험용 SandboxedSdkUi을 비실험용 SandboxedSdkUi에서 분리 (Ie9154, b/430118542)
- SdkSandboxControllerCompat이 sdkruntime-provider로 이전되었습니다 (Id99fb, b/426122358).
- 클라이언트 앱은 SandboxedSdkView 또는 SandboxedSdkUi를 사용하여 클라이언트 창에 상대적인 제공자 UI의 z-수준을 변경할 수 없습니다. (I87e9f, b/413659157)
버그 수정
- 기본
minSdk을 API 21에서 API 23으로 이동 (Ibdfca, b/380448311, b/435705964, b/435705223) SharedUiContainer세션 관리에PoolingContainer지원 추가: 컨테이너가PoolingContainer내에 있는 경우 공유 UI 세션이 닫히지 않음 (Iabe16, b/352500350)
버전 1.0.0-alpha16
2025년 5월 20일
androidx.privacysandbox.ui:ui-*:1.0.0-alpha16이 출시되었습니다. 버전 1.0.0-alpha16에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
SandboxedSdkView의 장애물을 측정하는 로직을 추가했습니다. 이 로직은 연결된SessionObserverFactory.signalOptions에SandboxedUiAdapterSignalOptions.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-alpha15, androidx.privacysandbox.ui:ui-core:1.0.0-alpha15 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha15이 출시되었습니다. 버전 1.0.0-alpha15에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
SandboxedSdkView및SandboxedSdkUi의 기본 Z 순서를 '아래'로 설정하여 이제 제공자의 노출 영역이 클라이언트의 창 아래에 배치됨을 나타냅니다. 클라이언트 창에서 수신된 후 이 모드에서 UI 제공자가MotionEvents를 수신할 수 있도록 지원이 추가되었습니다.SessionObserverFactory인터페이스에signalOptions필드를 추가했습니다. 이를 사용하여 연결된SessionObserver에 대해 수집되는 신호를 결정하는 데 사용되는 문자열 옵션 집합을 정의할 수 있습니다. 초기 신호 집합은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-alpha14, androidx.privacysandbox.ui:ui-core:1.0.0-alpha14 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha14이 출시되었습니다. 버전 1.0.0-alpha14에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
- 이제 클라이언트 소유 및 제공업체 소유 요소가 있을 수 있는 UI인 '공유 UI'를 만들 수 있습니다. 공유 UI는
ViewGroup를 확장하는SharedUiContainer를 사용하여 호스팅할 수 있습니다. 새 API는SandboxedSdkView및SandboxedUiAdapter과 유사한 세션 관리 개념을 활용합니다. - 이 버전에서 추가된 모든 API는
SharedUiPresentationApi@RequiresOptIn플래그 뒤에 있습니다.
API 변경사항
SharedUiContainer에 세션 관리 및 애셋 등록 API가 추가되었습니다. 세션 관리는 동일한 출시에서 도입된SharedUiAdapter를 사용하여 구현됩니다. (Ic60b0)- 클라이언트 소유 UI와 제공업체 소유 UI를 호스팅할 수 있는
SharedUiContainer추가 모든 하위 뷰를 왼쪽 상단에 배치합니다. (Ia7310) SharedUiAdapter의 이전 버전과의 호환성 지원이 추가되었습니다. (I56d7a)- 클라이언트 소유 UI와 제공업체 소유 UI를 호스팅할 수 있는 뷰 컨테이너의 세션 관리를 위해
SharedUiAdapter추가 세션 관리 로직은SandboxedUiAdapter와 유사합니다. (I501f6)
버그 수정
onVisibilityAggregated가 호출될 때 조회 가능성을 계산합니다. (I91c69)
알려진 문제
PoolingContainer내부에 배치되면SharedUiContainer는 창 분리 시 세션을 닫습니다.
버전 1.0.0-alpha13
2025년 1월 29일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha13, androidx.privacysandbox.ui:ui-core:1.0.0-alpha13 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha13이 출시되었습니다. 버전 1.0.0-alpha13에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
- Compose UI 내에서 원격 콘텐츠를 표시하는 데 사용할 수 있는
SandboxedSdkUi라는 컴포저블 객체를 추가했습니다. 이 객체는 세션 관리 및 이벤트 리스너를 위해 기존SandboxedSdkView개념을 활용합니다. (I009cf) - 이전
windowInputToken를 대체하는 새SessionConstants매개변수를 포함하도록SandboxedUiAdapter.openSession서명을 변경했습니다. 이 매개변수는SandboxedUiAdapter.Session의 수명 동안 일정하게 유지되는 값을 전달하는 데 사용됩니다. (Ibc0df, I28435)
알려진 문제
- 스크롤될 때
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-alpha12, androidx.privacysandbox.ui:ui-core:1.0.0-alpha12 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12이 출시되었습니다. 버전 1.0.0-alpha12에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
StateChangedListener를SandboxedSdkViewEventListener로 바꿨습니다 이 이벤트 리스너는 표시된 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-alpha11, androidx.privacysandbox.ui:ui-core:1.0.0-alpha11 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11이 출시되었습니다. 버전 1.0.0-alpha11에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
SandboxedUiAdapter을 확장하고 서로 다른SandboxedUiAdapters간에 위임하는 데 사용할 수 있는 실험용 APIDelegatingSandboxedUiAdapter를 도입했습니다. 이 어댑터가SandboxedSdkView와 같은 클라이언트 컨테이너에 설정되면 위임 어댑터는updateDelegate를 사용하여 위임 어댑터를 변경할 수 있습니다. 이렇게 하면 기존 세션이 종료되고 새 위임자를 위한 새SandboxedUiAdapter.Session이 생성됩니다. 이를 통해 대리자 간에 원활하게 전환할 수 있습니다. (I5f1c5, I9e3e7)- 패딩을 위한
SandboxedSdkView지원이 개선되었습니다. (Ic414f)
버그 수정
- 전역 레이아웃 이벤트에서 발생할 수 있는
NullPointerException가 수정되었습니다.
버전 1.0.0-alpha10
2024년 9월 18일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha10, androidx.privacysandbox.ui:ui-core:1.0.0-alpha10 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha10이 출시되었습니다. 버전 1.0.0-alpha10에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
SandboxedSdkView를 포함하는 창이 표시되는 경우에만SandboxedSdkView내에서 세션을 열도록 세션 열기 로직이 업데이트되었습니다.SandboxedSdkView가 포함된 창의 가시성이 변경될 때onUiContainerChanged를 전송하도록SessionObserver로직을 업데이트했습니다.
버그 수정
- 창 공개 상태가 변경될 때
onUiContainerChanged호출 (I541cf) - AGP 7.3 이상 (예: R8 버전 3.3)을 사용하여 R8을 사용하는 경우 API 모델링을 통해 자동으로 발생하고 AGP 8.1 이상 (예: D8 버전 8.1)을 사용하는 모든 빌드에 대해 새 플랫폼 API에 대한 액세스의 수동 윤곽선이 삭제되었습니다. AGP를 사용하지 않는 클라이언트는 D8 버전 8.1 이상으로 업데이트하는 것이 좋습니다. 자세한 내용은 이 도움말을 참조하세요. (If6b4c, b/345472586)
버전 1.0.0-alpha09
2024년 6월 26일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha09, androidx.privacysandbox.ui:ui-core:1.0.0-alpha09 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09이 출시되었습니다. 버전 1.0.0-alpha09에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
- UI 제공업체가 전체
SandboxedUiAdapter또는Session인터페이스를 구현하지 않도록 하는 데 사용할 수 있는AbstractSandboxedUiAdapter및AbstractSandboxedUiAdapter.AbstractSession추상 클래스가 도입되었습니다. UI 제공자는 이러한 추상 클래스를 사용하는 것이 좋습니다. SessionObserverFactory를SandboxedUiAdapter에 연결할 수 있는registerObserverFactory로직을 추가했습니다.SessionObserverFactory가 어댑터에 연결되면 해당 어댑터에 대해 생성된 각 새 UI 세션에 대해SessionObserver가 생성됩니다. 생성된SessionObserver는 UI 세션이 열릴 때onSessionOpened콜백을 수신합니다.Session뷰의 UI 프레젠테이션이 변경되면SessionObserver.onUiContainerChanged가 호출됩니다.onUiContainerChanged는 제한되며 최대 200ms마다 호출됩니다.SessionObserver.onUiContainerChanged에서 전송된Bundle에서 생성할 수 있는SandboxedSdkViewUiInfo를 추가했습니다. 이 객체는 UI 세션을 호스팅하는SandboxedSdkView의 UI 상태를 나타냅니다. 여기에는 높이와 너비 정보, 화면에 표시되는 뷰의 지오메트리를 나타내는Rect, 뷰의 불투명도를 나타내는 불투명도 힌트가 포함됩니다.
API 변경사항
SandboxedSdkViewUiInfo에 불투명도 힌트 추가 (I093ac)SessionObserver.onUiContainerChanged및SandboxedSdkViewUiInfo추가 (Ie98bc)SessionObserver인터페이스 및 등록 로직 추가 (I047dc)AbstractSandboxedUiAdapter및AbstractSession추가 (I3617a)
알려진 문제
- UI 제공자가 클라이언트 애플리케이션과 동일한 프로세스에 있는 경우 컨테이너가 스크롤될 때
SessionObserver.onUiContainerChanged가 전송되지 않습니다.
버전 1.0.0-alpha08
2024년 5월 14일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha08, androidx.privacysandbox.ui:ui-core:1.0.0-alpha08 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08이 출시되었습니다. 버전 1.0.0-alpha08에는 이 커밋이 포함되어 있습니다.
새로운 기능
RecyclerView과 같은PoolingContainer내에서SandboxedSdkView사용 지원이 추가되었습니다.SandboxedSdkView에PoolingContainer인 상위 요소가 있는 경우 UI 세션의 수명 주기가PoolingContainer의 수명 주기와 정렬되어 세션이 창 분리를 통해 유지될 수 있습니다.
API 변경사항
- 지원 중단된 개인 정보 보호 샌드박스 활동 API 이제 이러한 API는 전용 활동 라이브러리
androidx.privacysandbox.activity에서 찾을 수 있습니다. (I68beb)
버그 수정
- 풀링 컨테이너 내에 원격 콘텐츠를 표시할 때 렌더링 버그가 수정되었습니다. (I804df)
- 이전 버전과의 호환성 모드에서
ViewGroups의 렌더링 문제를 일으키는 버그가 수정되었습니다. (I8de92) SandboxedSdkView의 상위 요소 중 하나가PoolingContainer인 경우 창 분리가 아닌PoolingContainer에서 리소스를 해제할 수 있다고 표시할 때 UI 세션을 닫습니다. (I2046b)
외부 기여
- 이제
minSdk에서GestureDetector을 사용할 수 있으므로GestureDetectorCompat이 지원 중단되었습니다. (Icc4cd)
버전 1.0.0-alpha07
2023년 10월 18일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha07, androidx.privacysandbox.ui:ui-core:1.0.0-alpha07 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07이 출시되었습니다. 버전 1.0.0-alpha07에 포함된 커밋을 확인하세요.
새로운 기능
- 라이브러리에 하위 호환성 지원이 추가되었습니다. 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-alpha06, androidx.privacysandbox.ui:ui-core:1.0.0-alpha06 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06이 출시되었습니다. 버전 1.0.0-alpha06에 포함된 커밋을 확인하세요.
새로운 기능
SandboxedSdkView를 스크롤할 수 있는 '바운딩 상위 요소' 뷰에 클리핑하는 로직을 추가했습니다. 이렇게 하면SandboxedSdkView의 콘텐츠가 다른 뷰나 루트 콘텐츠 뷰 외부의 UI 구성요소를 가리지 않습니다. (I9ea94)
API 변경사항
SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction를orderProviderUiAboveClientUi로 이름을 바꿨습니다. (Iecb7e)
버그 수정
버전 1.0.0-alpha05
2023년 8월 9일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha05, androidx.privacysandbox.ui:ui-core:1.0.0-alpha05 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05이 출시되었습니다. 버전 1.0.0-alpha05에 포함된 커밋을 확인하세요.
새로운 기능
SandboxedSdkView에서 시작된 스크롤 및 플링 동작 시 터치 포커스를 호스트로 전송하는 로직을 추가했습니다. 이를 통해 클라이언트의 스크롤 가능한 컨테이너 호스팅 제공업체 UI가 스크롤과 플링에 올바르게 응답할 수 있습니다.
API 변경사항
SandboxedUiAdapter에windowInputToken매개변수를 추가했습니다. (Ief578)
버그 수정
- 첫 번째 그리기 후 세션 상태를 활성으로 설정 (I36f3f)
SandboxedSdkView의 레이아웃 문제 수정 (I09cb8)- 터치 포커스를 호스트로 전송하는 로직 추가 (I33b54)
SandboxedUiAdapter에windowInputToken매개변수 추가 이는SurfaceControlViewHost의 토큰이 삽입된 계층 구조의 호스트와 올바르게 연결되도록 하는 데 필요합니다. (Ief578)- 기본 스레드 내에서
notifyResized를 실행합니다. (I62440) Session.close()흐름의 비정상 종료 수정 (I5392e)
버전 1.0.0-alpha04
2023년 6월 21일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha04, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04이 출시되었습니다. 버전 1.0.0-alpha04에 포함된 커밋을 확인하세요.
새로운 기능
SdkActivityLauncher를 소개합니다. 런타임 지원 SDK가 활동을 실행하도록 허용하는 인터페이스입니다. (I5b3dc)
버그 수정
notifyZOrderChanged경합 상태 수정 UI 제공자가 모든 Z 순서 변경사항에 대해 알림을 받도록 합니다. openSession이 호출되기 전에SandboxedSdkView의 Z 순서가 변경되면 UI 제공자에게 명시적으로 알림이 전송되지 않습니다.
버전 1.0.0-alpha03
2023년 5월 24일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha03, androidx.privacysandbox.ui:ui-core:1.0.0-alpha03 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
StateChangedListener는 UI 세션의 변경사항을 애플리케이션에 알립니다.
API 변경사항
ErrorConsumer를 대체하는StateChangedListener가 추가되었습니다. (Icd5d3)
버그 수정
- UI 제공자가 모든 Z 순서 변경사항에 대해 알림을 받도록
notifyZOrderChanged경합 상태 수정
버전 1.0.0-alpha02
2023년 4월 19일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha02, androidx.privacysandbox.ui:ui-core:1.0.0-alpha02 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02이 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.
버그 수정
- 불안정한 테스트인 ChangingSandboxedSdkViewLayoutChangesChildLayout 테스트가 사용 중지됨
버전 1.0.0-alpha01
2023년 3월 8일
androidx.privacysandbox.ui:ui-client:1.0.0-alpha01, androidx.privacysandbox.ui:ui-core:1.0.0-alpha01 및 androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
- 애플리케이션과 런타임 지원 SDK (개인 정보 보호 샌드박스)가 SDK (제공자)에서 제공하는 UI를 애플리케이션 (클라이언트)이 호스팅하도록 하는 데 사용할 수 있는 새로운 Jetpack 라이브러리입니다.