外流服務

ExtServices 模組會更新核心 OS 功能的架構元件。 例如通知排名、自動填入文字比對策略、儲存空間快取 套件監控器和其他持續運作的服務本單元 可更新,意味著可接收非正常功能的更新 Android 發布週期。

服務元件

ExtServices 模組包含下列服務。

顯示 HashingService

在 Android 12 中,DisplayHashingService 的用途是 針對特定緩衝區產生 DisplayHash 的例項。計費方式 驗證系統是否已產生特定顯示雜湊。時間 產生顯示雜湊,呼叫端可以指定 以及要使用的雜湊演算法

文字分類服務

TextClassifierService敬上 服務元件返回 TextClassifier API 以及 Android 平台的「智慧文字選取」和「智慧型建議」等 Android 功能 通知。ExtServices 模組包含預設的文字分類器 經 CTS 測試驗證 TextClassifierPolicyTest.java

如有需要,您可以設定自訂文字分類器服務,方法是指定 config_defaultTextClassifierPackage 英吋 config.xml。 自訂文字分類器可以使用以下呼叫,依賴預設的文字分類器: TextClassifierService.getDefaultTextClassifierImplementation(Context)敬上 就能取得該執行個體的執行個體

內嵌建議 RenderService

InlineSuggestionRenderService 服務元件會啟用內嵌建議 顯示在鍵盤建議項目列中。藉由呼叫此服務, View 物件保留新內嵌自動填入流程的內嵌建議。 這個轉譯器服務呼叫的預設實作方式 androidx.autofill.inline.Renderer敬上 以便轉譯建議此行為是由以下項目的 CTS 測試驗證: /autofillservice/cts/inline/

套件名稱

搭載 Android 11 的裝置必須設定 config_servicesExtensionPackage (英吋 frameworks/base/core/res/res/values/config.xml) 變更為 ExtServices 套件 名稱 (com.android.ext.services)。這項設定變更是由 CTS 測試 cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java

模組邊界

在 Android 12 中,ExtServices 模組程式碼已從 frameworks/base/apex/extservices 移出 (這是 frameworks/base project 的子目錄) 和 packages/modules/ExtServices

packages/modules/ExtServices 的新專案結構如下:

  • apex/ (來自 frameworks/base/apex/extservices 的檔案)
  • java/ (來自 packages/modules/ExtServices/res 的檔案, packages/modules/ExtServices/srcpackages/modules/ExtServices/tests、 新功能和檔案)
  • jni/ (新功能的檔案)
  • native/ (新功能的檔案)

ExtServices 模組邊界位於 packages/modules/ExtServices。Android 版 11 也移動了多項 TextClassifier 實作 共有 frameworks/base/core/ 種類別。

模組格式

在 Android 11 中,ExtServices 模組 (com.android.ext.services) 位於 APEX 格式。在 Android 10 中,這個模組會採用 APK 格式。

自訂

在 Android 11 中,您可以設定自訂文字 呼叫預設文字的分類器服務 分類器 (但我們不建議這麼做)。於 Android 10,ExtServices 模組不提供 自訂選項

測試

Android Compatibility Test Suite (CTS) 可驗證 ExtServices 模組 針對每個模組執行完整的 CTS 測試 版本。此外,Mainline Test Suite (MTS) 也包含多種 ExtServices 測試。ExtServices 測試的完整清單如下: