A2UI Compose

  
Jetpack Compose Agent-to-UI (A2UI) 算繪器提供 A2UI 通訊協定的實作項目,可讓 AI 代理生成豐富的互動式使用者介面,並算繪原生 Compose 元件,不必執行任意程式碼。
最近更新時間 穩定版 候選版 Beta 版 Alpha 版
2026 年 9 月 23 日 - - - 1.0.0-alpha01

宣告依附元件

如要新增 A2UI Compose 的依附元件,必須將 Google Maven 存放區新增至專案。詳情請參閱 Google 的 Maven 存放區。

在應用程式或模組的 build.gradle 檔案中,新增所需構件的依附元件:

Groovy

dependencies {
    implementation "androidx.a2ui.compose:compose-runtime:1.0.0-alpha01"
    implementation "androidx.a2ui.compose:compose-ui:1.0.0-alpha01"
    androidTestImplementation "androidx.a2ui.compose:compose-ui-testing:1.0.0-alpha01"
}

Kotlin

dependencies {
    implementation("androidx.a2ui.compose:compose-runtime:1.0.0-alpha01")
    implementation("androidx.a2ui.compose:compose-ui:1.0.0-alpha01")
    androidTestImplementation("androidx.a2ui.compose:compose-ui-testing:1.0.0-alpha01")
}

如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 說明文件。

1.0 版本

1.0.0-alpha01 版

2026 年 9 月 23 日

發布 androidx.a2ui.compose:compose-runtime:1.0.0-alpha01、androidx.a2ui.compose:compose-ui:1.0.0-alpha01 和 androidx.a2ui.compose:compose-ui-testing:1.0.0-alpha01。1.0.0-alpha01 版包含這些修訂項目。

新功能

Jetpack Compose Agent-to-UI (A2UI) 算繪器提供 A2UI 通訊協定的實作項目,可讓 AI 代理生成豐富的互動式使用者介面,並算繪原生 Compose 元件,不必執行任意程式碼。這個程式庫會將 A2UI 通訊協定訊息對應至 Compose 基本項目,同時根據 Compose 快照狀態系統提供精細的反應性。這個程式庫也提供 API,可建立自訂元件和目錄。

API 變更

  • 已將 A2uiBasicCatalogV1.CatalogId 從 .../v0_9_1/... 更新為 .../v0_9/...,以符合標準 A2UI 通訊協定規格。(Idcc20)
  • 更新 A2uiBasicCatalogV 中的元件順序,完全符合基本目錄規格。(I23093、b/547851648)
  • 在 A2uiBasicCatalogV1 下的所有相關元件介面中新增 ChecksProperty,並透過傳遞至每個元件 TypedContent 的參數提供屬性值。(I9f393、b/547851648)
  • 新增 A2uiBasicCatalogV1.ChoicePicker 和 MaterialA2uiBasicCatalogV1Defaults.choicePicker。(I875a6、b/547851648)
  • 新增 A2uiBasicCatalogV1.Modal 和 MaterialA2uiBasicCatalogV1Defaults.modal。(Icd553、b/547851648)
  • 已重新命名 A2uiBasicCatalogV1 中的屬性,以遵循 Pascal 大小寫命名樣式。(I91512、b/547851648)
  • 在 A2uiBasicCatalogV1 下的所有元件介面中新增 AccessibilityProperty,並透過傳遞至每個元件 TypedContent 的參數提供屬性值。(I76b80、b/547851648)
  • 新增 A2uiBasicCatalogV1.TextField 和 MaterialA2uiBasicCatalogV1Defaults.textField。(Ifdaec、b/547851648)
  • 新增 A2uiBasicCatalogV1.Video 和 MaterialA2uiBasicCatalogV1Defaults.video。(I8595c、b/547851648)
  • 新增 A2uiBasicCatalogV1.AudioPlayer 和 MaterialA2uiBasicCatalogV1Defaults.audioPlayer。(Ida509、b/547851648)
  • 在 a2ui-model 和 a2ui-engine 中新增 format 和條件式 if-then 結構定義關鍵字,並更新 A2uiBasicCatalogV1.DateTimeInput 最小和最大屬性結構定義。(I556d5、b/553193771)
  • 新增 A2uiBasicCatalogV1.Slider 和 MaterialA2uiBasicCatalogV1Defaults.slider。(Ieb72d、b/547851648)
  • 新增 A2uiBasicCatalogV1.CheckBox 和 MaterialA2uiBasicCatalogV1Defaults.checkBox。(I84525、b/547851648)
  • 新增 A2uiBasicCatalogV1.Divider 和 MaterialA2uiBasicCatalogV1Defaults.divider。(I91208、b/547851648)
  • 新增 A2uiBasicCatalogV1.Tabs 和 MaterialA2uiBasicCatalogV1Defaults.tabs。(Ic33d3、b/547851648)
  • 新增 A2uiBasicCatalogV1.List 和 MaterialA2uiBasicCatalogV1Defaults.list。(I89f73、b/547851648)
  • 新增 A2uiBasicCatalogV1.Icon 和 MaterialA2uiBasicCatalogV1Defaults.icon。(I65524、b/547851648)
  • 新增 ProvideActionInterceptor,用於攔截子項元件的動作。(I6ae69、b/552486965)
  • 在 A2uiClientCapabilities 和 A2uiCoreCatalog 中新增了廣告內嵌目錄結構定義的支援。(I973cf、b/537714970)
  • 新增 A2uiBasicCatalogV1.Image 和 MaterialA2uiBasicCatalogV1Defaults.image。(I673b3、b/547851648)
  • 新增 A2uiBasicCatalogV1.Button 和 MaterialA2uiBasicCatalogV1Defaults.button。(I5215f、b/547851648)
  • 已新增 A2uiBasicCatalogV1.Row/A2uiBasicCatalogV1.Column 和 MaterialA2uiBasicCatalogV1Defaults.row/ MaterialA2uiBasicCatalogV1Defaults.column。(Ibcbe7、b/547851648)
  • 在列舉、數字和布林值 A2uiProperty 型別中新增 default 參數。(Id509e、b/547851648)
  • 新增 A2uiBasicCatalogV1.Card 和 MaterialA2uiBasicCatalogV1Defaults.card。(Icf604、b/547851648)
  • 已將 isAdditionalPropertiesAllowed 和 additionalPropertiesSchema 參數新增至 A2uiProperty.nested 和 A2uiProperty.nestedList。(I72836、b/547815898)
  • 在清單 A2uiProperty 類型中新增 minItems 和 maxItems 參數。(I716d3、b/547798330)
  • 新增 A2uiProperty.enum、A2uiProperty.custom 和 A2uiProperty.dynamicCustom 屬性類型。(I0647d、b/545522395)
  • 在 observeA2uiComponentState 中將 A2uiCoreSurfaceModel 替換為 A2uiSurfaceModel,確保 androidx.a2ui.compose.runtime 中的公開 API 不會公開 androidx.a2ui.engine 中的型別。(Ic45e2、b/544705890)
  • 新增 A2uiTestSurface 可組合函式,用於掛接及測試 A2UI 表面和元件。(I03c8a、b/527415570)
  • A2uiSchema 現在支援各子類別中的關鍵字,而非 oneOf、allOf、anyOf、not、const、default 和 enum 的專屬子類別。(I6a6f8)
  • 新增了 Compose A2UI 算繪器的測試 API。(I59c9f、b/527415570)
  • 新增 A2uiReadinessEvaluator 和相關 API。(Ib37d3、b/527415547、b/524122705)
  • 新增 A2uiComponentCollection、A2uiFunctionCollection 和 A2uiCoreComponentDefinitionCollection,並更新目錄 API 以使用新的集合。(I96438、b/527415547)
  • 新增 A2uiMessageParser 工廠函式。(I8596a、b/524122705)
  • 新增 A2uiRuntimeCatalog 標記介面,以及 androidx.a2ui.compose.ui 中的 API,用於定義元件和目錄。(Ibea7a、b/527415547、b/524122705)
  • 已將 androidx.compose.runtime:runtime-a2ui 移至 androidx.a2ui.compose:compose-runtime。(Ifc7cf、b/524122705)

修正錯誤

  • androidx.lifecycle:lifecycle-runtime 依附元件已更新至 2.10.0 版。如要使用 AGP 9.5.0-alpha04 以上版本執行隨附的生命週期執行階段 Lint 檢查,就必須使用這個版本。(Id18ea、b/556807521)
  • compileSdk,適用於更新至 37.1 的 Compose 程式庫。 這會要求所有使用 Compose 的應用程式和程式庫,以遞移方式更新 compileSdk。(I05b0f)
  • 在 A2UI Basic Catalog V1 中,預設的 Column 水平對齊方式已更新為 Alignment.Start。Ia1c6db
  • 在 A2UI Basic Catalog V1 中,預設的 Row 垂直對齊方式已更新為 Alignment.Top。If0bca4