Das ExtServices-Modul aktualisiert die Framework-Komponenten für die wichtigsten Betriebssystemfunktionen, z. B. das Ranking von Benachrichtigungen, Strategien zur automatischen Vervollständigung von Text, Watchdog-Paket und andere kontinuierlich ausgeführte Dienste. Dieses Modul kann aktualisiert werden, d. h. es kann außerhalb des normalen Android-Releasezyklus Updates für Funktionen erhalten.
Dienstkomponenten
Das ExtServices-Modul enthält die folgenden Dienste.
DisplayHashingService
ab Android 12TextClassifierService
ab Android 11InlineSuggestionsRenderService
ab Android 11AutofillFieldClassificationService
beginnt in Android 10NotificationAssistantService
ab Android 10ResolverRankerService
beginnt in Android 10CacheQuotaService
ab Android 10
DisplayHashingService
In Android 12 wird DisplayHashingService
verwendet, um eine Instanz von DisplayHash
für den angegebenen Puffer zu generieren. Außerdem wird damit überprüft, ob ein bestimmter Display-Hash vom System generiert wurde. Wann?
beim Generieren eines Anzeige-Hashs kann der Aufrufer angeben, welche der unterstützten
Hash-Algorithmen, die sie verwenden möchten.
TextClassifierService
Die
TextClassifierService
Rückseiten der Dienstkomponente TextClassifier
APIs
und Android-Funktionen wie die intelligente Textauswahl und intelligente Vorschläge in
Benachrichtigungen. Das ExtServices-Modul enthält den Standardtextklassifikator,
der durch den CTS-Test verifiziert wird,
TextClassifierPolicyTest.java
Bei Bedarf können Sie einen benutzerdefinierten Textklassifizierungsdienst konfigurieren, indem Sie config_defaultTextClassifierPackage
in config.xml
angeben.
Benutzerdefinierte Textklassifikatoren können vom Standard-Textklassifikator abhängig sein, indem der Aufruf
TextClassifierService.getDefaultTextClassifierImplementation(Context)
um eine Instanz davon zu erhalten.
InlineSuggestionRenderService
Die Dienstkomponente InlineSuggestionRenderService
aktiviert Inline-Vorschläge
das in der Leiste mit Tastaturvorschlägen angezeigt wird. Dieser Dienst wird aufgerufen, um ein
View
-Objekt mit dem Inline-Vorschlag für den neuen Inline-Autofill-Vorgang.
Die Standardimplementierung für diesen Rendererdienst ruft androidx.autofill.inline.Renderer
auf, um den Vorschlag zu rendern. Dieses Verhalten wird durch CTS-Tests in /autofillservice/cts/inline/
überprüft.
Paketname
Für Geräte mit Android 11 muss Folgendes festgelegt werden:
config_servicesExtensionPackage
(in
frameworks/base/core/res/res/values/config.xml
) zum ExtServices-Paket
Name (com.android.ext.services
) Diese Konfigurationsänderung wird vom
CTS-Test
cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
Modulgrenze
In Android 12 werden die ExtServices
Modulcode wurde aus frameworks/base/apex/extservices
verschoben
(dies ist ein Unterverzeichnis von frameworks/base project
)
und
packages/modules/ExtServices
Die neue Projektstruktur für packages/modules/ExtServices
sieht so aus:
apex/
(Dateien vonframeworks/base/apex/extservices
)java/
(Dateien vonpackages/modules/ExtServices/res
,packages/modules/ExtServices/src
,packages/modules/ExtServices/tests
, und Dateien für die neue Funktion)jni/
(Dateien für das neue Element)native/
(Dateien für neue Funktion)
Die Modulgrenze von „ExtServices“ befindet sich in packages/modules/ExtServices
. Außerdem werden in Android 11 mehrere TextClassifier
-Implementierungsklassen aus frameworks/base/core/
verschoben.
Modulformat
In Android 11 wird das ExtServices-Modul
(com.android.ext.services
) ist in APEX
Format. Unter Android 10 liegt dieses Modul im APK-Format vor.
Personalisierung
Unter Android 11 können Sie einen benutzerdefinierten Textklassifizierungsdienst konfigurieren, der den Standard-Textklassifikator aufruft. Dies wird jedoch nicht empfohlen. In Bei Android 10 bietet das ExtServices-Modul keine Anpassungsoptionen.
Testen
Die Android Compatibility Test Suite (CTS) überprüft das ExtServices-Modul die entsprechenden Funktionen, indem eine Reihe von CTS-Tests für jedes Modul ausgeführt wird. Veröffentlichung. Darüber hinaus enthält die Mainline Test Suite (MTS) auch ExtServices-Tests. Die vollständige Liste der ExtServices-Tests sieht so aus:
Konfigurationsänderungen Durch CTS-Test geprüft
cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
TextClassifier
-Konfiguration. Bestätigt durch CTS-Testcts/TextClassifierPolicyTest.java
.Inline-Vorschlag für automatisches Ausfüllen Geprüft durch CTS-Tests in
cts/inline/