調適型卡片概觀

調適型卡片是開放式卡片交換格式,可讓開發人員透過通用且一致的方式交換 UI 內容。

運作方式

卡片作者將其內容描述為簡單的 JSON 物件。 接著,該內容可以在 主應用程式內原生轉譯,自動調適為主機的外觀與風格。

例如,Contoso Bot 可以透過 Bot Framework 撰寫調適型卡片,當傳遞至 Skype 時,外觀和風格看起來就像 Skype 卡。 將相同的承載傳送至 Microsoft Teams 時,外觀和風格看起來就像 Microsoft Teams。 隨著越來越多的主應用程式開始支援調適型卡片時,相同的承載會由內自動啟動這些應用程式,但仍認為完全是應用程式原生的。

使用者獲利,因為所有的項目都很熟悉。 主應用程式也獲利,因為其控制了使用者體驗。 卡片作者也獲利,因為不需要額外的工作就可以擴大其內容的範圍。

目標

調適型卡片的目標是:

  • 可攜式 -適用於任何應用程式、裝置及 UI 架構
  • 開放式 - 程式庫和結構描述是開放原始碼並共用
  • 低成本 - 輕鬆地定義,輕鬆地取用
  • 清楚表達 - 以開發人員想要產生的內容為目標
  • 純宣告式 - 不需要或不允許使用代碼
  • 自動樣式 - 主應用程式 UX 和品牌指導方針

對於卡片作者

調適型卡片非常適合卡片作者:

  • 單一結構描述 - 您取得單一格式、將建立卡片的成本降至最低,並將可以使用卡片的地點數目最大化。
  • 豐富的運算式 - 您的內容可以更貼近想要說的,因為可以使用更豐富的調色盤。
  • 廣泛覆蓋面 - 您的內容會用於廣泛的應用程式,而不必學習新的結構描述。
  • 輸入控制項 - 您的卡片可包含正在檢視卡片之使用者所收集資訊的輸入控制項。
  • 更好的工具 - 開放卡片生態系統即代表每個人都可以共用之更好的工具。

對於體驗擁有者

如果您想要利用第三方內容生態系統的應用程式開發人員,就會喜歡調適型卡片,因為:

  • 一致的使用者體驗 - 您保證為使用者提供一致的體驗,因為您擁有轉譯卡的樣式。
  • 原生效能 - 您可以取得原生效能,因為其直接鎖定您的 UI 架構。
  • 安全 - 以安全的承載傳遞內容,因此不需要開啟 UI 架構來進行原始標記和撰寫指令碼。
  • 輕鬆實作 - 取得現有的程式庫以輕鬆地與任何支援的平台整合
  • 免費文件 - 由於不需要發明、實作和記錄專屬結構描述而可以節省時間。
  • 共用工具 - 由於不需要建立自訂工具而可以節省時間。

核心設計原則

調適型卡片由一組指導原則所驅動,這些原則對於保持設計正常運行很有用。

重視語意而不是像素完美

我們盡可能致力於研究語意價值和概念,而不是僅僅是像素完美的版面配置。 語意運算式的範例顯示在色彩、大小,以及如 FactSet 和 ImageSet 等的元素。 這些都可讓主應用程式制定更佳的決策,來決定實際的外觀與風格。

卡片作者擁有內容,主應用程式擁有外觀與風格

卡片作者擁有他們想說的內容,但應用程式顯示其擁有自己應用程式內容中之卡片的外觀與風格。

保持簡單,但清楚表達

我們希望調適型卡片具有清楚表達的能力和適應一般用途,但我們不想要建置 UI 架構。 目標是要建立一個「能夠清楚表達」的中繼層,就像 Markdown 可以清楚表達文件的方式相同。

藉由專注於保持簡單且清楚表達的能力,Markdown 建立了一個簡單且一致的文件內容描述。 同樣地,我們相信調適型卡片可以建立簡單易懂的方法來描述卡片內容。

如有疑問,則不予採用

與其現在建立錯誤的內容,不如稍後再進行新增。 如果發現自己在爭論是否應該添加某些內容,則我們選擇不予採用。新增一個屬性比擁有一個不希望支援的舊版更容易。

Build 2019 研討會

Microsoft Build 會議的下列研討會中將展示各種使用案例中的調適型卡片。