privacysandbox ui
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2024년 11월 13일 | - | - | - | 1.0.0-alpha11 |
종속 항목 선언
privacysandbox-ui의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { // Use to implement privacysandbox ui implementation "androidx.privacysandbox.ui:ui:1.0.0-alpha11" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha11" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11" }
Kotlin
dependencies { // Use to implement privacysandbox ui implementation("androidx.privacysandbox.ui:ui:1.0.0-alpha11") // Use to implement privacysandbox ui-core implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha11") // Use to implement privacysandbox ui-provider implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha11") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.0
버전 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) - 새 플랫폼 API에 대한 액세스 수동 개요가 삭제되었습니다. AGP 7.3 이상 (예: R8 버전 3.3)에서 R8을 사용하고 있을 때와 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 라이브러리입니다.