Modul ExtServices memperbarui komponen framework untuk fungsi OS inti, seperti peringkat notifikasi, strategi pencocokan teks isi otomatis, cache penyimpanan, paket watchdog, dan layanan lain yang berjalan terus-menerus. Modul ini bersifat dapat diperbarui, artinya dapat menerima pembaruan untuk fungsionalitas di luar normal Siklus rilis Android.
Komponen layanan
Modul ExtServices berisi layanan berikut.
DisplayHashingService
mulai di Android 12TextClassifierService
mulai di Android 11InlineSuggestionsRenderService
dimulai dalam Android 11AutofillFieldClassificationService
dimulai dalam Android 10NotificationAssistantService
dimulai dalam Android 10ResolverRankerService
dimulai dalam Android 10CacheQuotaService
mulai dari Android 10
LayananHashingDisplay
Di Android 12, DisplayHashingService
digunakan untuk
membuat instance DisplayHash
untuk buffer yang ditentukan. Model ini juga digunakan
untuk memverifikasi bahwa {i>hash<i} tampilan
tertentu telah dihasilkan oleh sistem. Kapan
menghasilkan hash tampilan, pemanggil dapat menentukan
algoritma {i>hashing <i}yang
ingin digunakan.
TextClassifierService
Tujuan
TextClassifierService
komponen layanan mendukung TextClassifier
API
dan fitur Android seperti pemilihan teks cerdas dan saran cerdas dalam
notifikasi. Modul ExtServices berisi pengklasifikasi teks default,
yang diverifikasi dengan uji CTS
TextClassifierPolicyTest.java
Jika diperlukan, Anda dapat mengonfigurasi layanan pengklasifikasi teks kustom dengan menentukan
config_defaultTextClassifierPackage
inci
config.xml
.
Pengklasifikasi teks khusus dapat bergantung pada pengklasifikasi teks default dengan memanggil
TextClassifierService.getDefaultTextClassifierImplementation(Context)
untuk mendapatkan sebuah instance.
InlineSuggestionRenderService
Komponen layanan InlineSuggestionRenderService
mengaktifkan Saran Inline
yang akan ditampilkan di bilah saran keyboard. Layanan ini dipanggil untuk merender
Objek View
yang menyimpan Saran Inline untuk alur Isi Otomatis Inline baru.
Implementasi default untuk layanan perender ini memanggil
androidx.autofill.inline.Renderer
untuk merender saran. Perilaku ini diverifikasi
dengan tes CTS pada
/autofillservice/cts/inline/
Nama paket
Perangkat yang menjalankan Android 11 harus disetel
config_servicesExtensionPackage
(dalam
frameworks/base/core/res/res/values/config.xml
) ke paket ExtServices
nama (com.android.ext.services
). Perubahan konfigurasi ini diverifikasi oleh
Uji CTS
cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
.
Batas modul
Di Android 12, ExtServices
kode modul dipindahkan dari frameworks/base/apex/extservices
(ini adalah subdirektori frameworks/base project
)
dan
packages/modules/ExtServices
.
Struktur project baru untuk packages/modules/ExtServices
adalah sebagai berikut:
apex/
(file dariframeworks/base/apex/extservices
)java/
(file daripackages/modules/ExtServices/res
,packages/modules/ExtServices/src
,packages/modules/ExtServices/tests
, dan file untuk fitur baru)jni/
(file untuk fitur baru)native/
(file untuk fitur baru)
Batas modul ExtServices berada di packages/modules/ExtServices
. Android
11 juga memindahkan beberapa implementasi TextClassifier
dari frameworks/base/core/
class.
Format modul
Di Android 11, modul ExtServices
(com.android.ext.services
) ada di APEX
format font. Di Android 10, modul ini memiliki format APK.
Penyesuaian
Di Android 11, Anda dapat mengonfigurasi layanan pengklasifikasi yang memanggil teks default pengklasifikasi (tetapi, hal ini tidak direkomendasikan). Di beberapa Android 10, modul ExtServices tidak menyediakan dan opsi penyesuaian.
Pengujian
Compatibility Test Suite (CTS) Android memverifikasi modul ExtServices fungsionalitas dengan menjalankan serangkaian tes CTS yang komprehensif pada setiap modul data. Selain itu, Mainline Test Suite (MTS) juga berisi beberapa Pengujian ExtServices. Daftar lengkap pengujian ExtServices adalah sebagai berikut:
Perubahan konfigurasi. Diverifikasi dengan uji CTS
cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
Konfigurasi
TextClassifier
. Diverifikasi dengan uji CTScts/TextClassifierPolicyTest.java
Saran inline isi otomatis. Diverifikasi oleh uji CTS di
cts/inline/