Dış Hizmetler

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.

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: