privacysandbox ui
最近更新時間 | 穩定版 | 候選版 | Beta 版 | Alpha 版 |
---|---|---|---|---|
2024 年 12 月 11 日 | - | - | - | 1.0.0-alpha12 |
宣告依附元件
如要新增 privacysandbox-ui 的依附元件,您必須將 Google Maven 存放區新增至專案。詳情請參閱 Google 的 Maven 存放區。
在應用程式或模組的 build.gradle
檔案中,新增所需構件的依附元件:
Groovy
dependencies { // Use to implement privacysandbox ui implementation "androidx.privacysandbox.ui:ui:1.0.0-alpha12" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha12" // Use to implement privacysandbox ui-core implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12" }
Kotlin
dependencies { // Use to implement privacysandbox ui implementation("androidx.privacysandbox.ui:ui:1.0.0-alpha12") // Use to implement privacysandbox ui-core implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha12") // Use to implement privacysandbox ui-provider implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha12") }
如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。
意見回饋
您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。
詳情請參閱 Issue Tracker 說明文件。
1.0 版本
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 版包含這些修訂項目。
新功能
- 以
SandboxedSdkViewEventListener
取代StateChangedListener
。這個事件監聽器可用來監聽 UI 顯示、工作階段關閉和工作階段錯誤事件。
API 變更
- 新增
SandboxedSdkViewEventListener
,用於監聽SandboxedSdkView
中的 UI 事件。這個版本也會移除StateChangedListener
。(Id71ea)。
修正錯誤
- 已從
SandboxedSdkView
中移除裁剪邊界邏輯。如果SandboxedSdkView
放在可捲動的容器中,且未呼叫orderProviderUiAboveClientUi(false)
(直到基礎架構錯誤修正為止),就會導致使用者體驗問題。(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 版包含這些修訂項目。
新功能
- 推出了實驗性 API
DelegatingSandboxedUiAdapter
,可擴充SandboxedUiAdapter
,並用於在不同SandboxedUiAdapters
之間委派。當這個轉接程式設在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
中開啟工作階段。 - 更新
SessionObserver
邏輯,當包含SandboxedSdkView
的視窗顯示設定變更時,會傳送onUiContainerChanged
。
修正錯誤
- 在視窗顯示設定變更時叫用
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 版包含這些修訂項目。
新功能
- 引入
AbstractSandboxedUiAdapter
和AbstractSandboxedUiAdapter.AbstractSession
抽象類別,供 UI 供應器使用,以免實作整個SandboxedUiAdapter
或Session
介面。建議 UI 供應器使用這些抽象類別。 - 新增
registerObserverFactory
邏輯,讓SessionObserverFactory
可附加至SandboxedUiAdapter
。當SessionObserverFactory
連結至轉接器時,系統會為該轉接器建立的每個新 UI 工作階段建立SessionObserver
。建立的SessionObserver
會在 UI 工作階段開啟時收到onSessionOpened
回呼。當Session
檢視畫面的 UI 呈現方式變更時,系統會呼叫SessionObserver.onUiContainerChanged
。onUiContainerChanged
會受到節流限制,最多每 200 毫秒呼叫一次。 - 新增
SandboxedSdkViewUiInfo
,可透過Bundle
在SessionObserver.onUiContainerChanged
中建立。這個物件代表代管 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 版包含這些修訂項目。
新功能
- 開始支援在
PoolingContainer
中使用SandboxedSdkView
,例如RecyclerView
。如果SandboxedSdkView
的父項為PoolingContainer
,其 UI 工作階段的生命週期會與PoolingContainer
的生命週期保持一致,以確保工作階段可在視窗卸離後持續存在。
API 變更
- 已淘汰的 Privacy Sandbox Activity API。這些 API 現已改為位於專屬的 Activity 程式庫
androidx.privacysandbox.activity
中。(I68beb)
修正錯誤
- 修正在匯集容器中顯示遠端內容時的轉譯錯誤。(I804df)
- 修正在回溯相容性模式下,導致
ViewGroups
顯示問題的錯誤。(I8de92)。 - 如果
SandboxedSdkView
的其中一個父項是PoolingContainer
,請在PoolingContainer
表示可釋出資源時關閉 UI 工作階段,而不是在視窗卸離時關閉。(I2046b)
外部貢獻
GestureDetectorCompat
已淘汰,因為GestureDetector
可從minSdk
取得。(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 變更
- 已將
windowInputToken
參數新增至SandboxedUiAdapter
(Ief578)
修正錯誤
- 在第一次抽樣後將工作階段狀態設為「Active」(I36f3f)
- 修正
SandboxedSdkView
的版面配置問題。(I09cb8)。 - 新增邏輯,將觸控焦點轉移至主機。(I33b54)。
- 將
windowInputToken
參數新增至SandboxedUiAdapter
。這項操作有助於確保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 變更
- 新增
StateChangedListener
取代ErrorConsumer
(Icd5d3)
修正錯誤
- 修正
notifyZOrderChanged
競爭狀態,讓 UI 供應器收到所有 Z 順序變更的通知
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 版本包含這些修訂版本。
新功能
- 這些是應用程式和支援 Runtime 的 SDK (Privacy Sandbox) 可使用的新 Jetpack 程式庫,可讓應用程式 (用戶端) 代管 SDK (提供者) 提供的任何 UI。