ExtServices modülü, bildirim sıralaması, otomatik doldurma metin eşleştirme stratejileri, depolama önbelleği, paket izleme ve sürekli çalışan diğer hizmetler gibi temel işletim sistemi işlevlerine yönelik çerçeve bileşenlerini günceller. Bu modül güncellenebilir, yani normal Android sürüm döngüsünün dışındaki işlevsellik güncellemelerini alabilir.
Servis bileşenleri
ExtServices modülü aşağıdaki hizmetleri içerir.
DisplayHashingService
Android 12'den itibarenTextClassifierService
Android 11'de başlıyorInlineSuggestionsRenderService
Android 11'den itibarenAutofillFieldClassificationService
Android 10'da başlıyorNotificationAssistantService
Android 10'da başlıyorResolverRankerService
Android 10'da başlıyorCacheQuotaService
Android 10'da başlıyor
DisplayHashing Hizmeti
Android 12'de DisplayHashingService
, belirtilen arabellek için bir DisplayHash
örneği oluşturmak amacıyla kullanılır. Ayrıca sistem tarafından belirli bir görüntü karmasının oluşturulduğunu doğrulamak için de kullanılır. Bir görüntü karması oluştururken, arayan kişi desteklenen karma algoritmalarından hangisini kullanmak istediğini belirleyebilir.
Metin Sınıflandırıcı Hizmeti
TextClassifierService
hizmet bileşeni , TextClassifier
API'lerini ve akıllı metin seçimi ve bildirimlerdeki akıllı öneriler gibi Android özelliklerini destekler. ExtServices modülü, CTS testi TextClassifierPolicyTest.java
tarafından doğrulanan varsayılan metin sınıflandırıcısını içerir.
Gerekirse, config.xml
dosyasında config_defaultTextClassifierPackage
belirterek özel bir metin sınıflandırıcı hizmetini yapılandırabilirsiniz. Özel metin sınıflandırıcıları, bir örneğini almak için TextClassifierService.getDefaultTextClassifierImplementation(Context)
öğesini çağırarak varsayılan metin sınıflandırıcısına bağlı olabilir.
Satır İçi Öneri Render Hizmeti
InlineSuggestionRenderService
hizmet bileşeni, Satır İçi Önerilerin klavye öneri şeridinde gösterilmesini sağlar. Bu hizmet, yeni Satır İçi Otomatik Doldurma akışı için Satır İçi Öneriyi tutan bir View
nesnesini işlemek üzere çağrılır. Bu oluşturucu hizmetinin varsayılan uygulaması, öneriyi oluşturmak için androidx.autofill.inline.Renderer
çağırır. Bu davranış /autofillservice/cts/inline/
dosyasındaki CTS testleriyle doğrulanmıştır.
Paket ismi
Android 11 çalıştıran cihazların config_servicesExtensionPackage
( frameworks/base/core/res/res/values/config.xml
içinde) ExtServices paket adına ( com.android.ext.services
) ayarlaması gerekir. Bu yapılandırma değişikliği, CTS testi cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
tarafından doğrulanır.
Modül sınırı
Android 12'de ExtServices modül kodu, frameworks/base/apex/extservices
(bu, frameworks/base project
bir alt dizini) ve packages/modules/ExtServices
dizinden taşınır.
packages/modules/ExtServices
için yeni proje yapısı aşağıdaki gibidir:
-
apex/
(frameworks/base/apex/extservices
dosyalar) -
java/
(packages/modules/ExtServices/res
,packages/modules/ExtServices/src
,packages/modules/ExtServices/tests
dosyaları ve yeni özellik için dosyalar) -
jni/
(yeni özellik dosyaları) -
native/
(yeni özellik için dosyalar)
ExtServices modül sınırı packages/modules/ExtServices
içindedir. Android 11 ayrıca birkaç TextClassifier
uygulama sınıfını frameworks/base/core/
dışına taşıyor.
Modül formatı
Android 11'de ExtServices modülü ( com.android.ext.services
) APEX biçimindedir. Android 10'da bu modül APK formatındadır.
Özelleştirme
Android 11'de, varsayılan metin sınıflandırıcıyı çağıran özel bir metin sınıflandırıcı hizmeti yapılandırabilirsiniz (ancak bu önerilmez). Android 10'da ExtServices modülü özelleştirme seçenekleri sunmaz.
Test yapmak
Android Uyumluluk Test Paketi (CTS), her modül sürümünde kapsamlı bir CTS testleri seti çalıştırarak ExtServices modülünün işlevselliğini doğrular. Ayrıca Mainline Test Suite (MTS) çeşitli ExtServices testlerini de içerir. ExtServices testlerinin tam listesi aşağıdaki gibidir:
Yapılandırma değişiklikleri. CTS testi
cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
tarafından doğrulandı.TextClassifier
yapılandırması. CTS testicts/TextClassifierPolicyTest.java
tarafından doğrulandı.Satır içi öneriyi otomatik doldur.
cts/inline/
dosyasındaki CTS testleriyle doğrulandı.