Modul ExtServices mengupdate komponen framework untuk fungsi OS inti, seperti peringkat notifikasi, strategi pencocokan teks secara otomatis, cache penyimpanan, watchdog paket, dan layanan lain yang berjalan secara terus-menerus. Modul ini dapat diupdate, yang berarti dapat menerima update pada fungsi di luar siklus rilis Android normal.
Komponen layanan
Modul ExtServices berisi layanan berikut.
DisplayHashingService
mulai Android 12TextClassifierService
mulai di Android 11InlineSuggestionsRenderService
dimulai di Android 11AutofillFieldClassificationService
dimulai di Android 10NotificationAssistantService
mulai Android 10ResolverRankerService
mulai Android 10CacheQuotaService
mulai Android 10
DisplayHashingService
Di Android 12, DisplayHashingService
digunakan untuk
membuat instance DisplayHash
untuk buffering yang ditentukan. Ini juga digunakan
untuk memverifikasi bahwa hash tampilan tertentu dihasilkan oleh sistem. Saat
membuat hash tampilan, pemanggil dapat menentukan algoritma hashing mana yang didukung
yang ingin digunakan.
TextClassifierService
Komponen
layanan
TextClassifierService
mendukung TextClassifier
API
dan fitur Android seperti pemilihan teks cerdas dan saran cerdas dalam
notifikasi. Modul ExtServices berisi pengklasifikasi teks default, yang diverifikasi oleh uji CTS TextClassifierPolicyTest.java
.
Jika perlu, Anda dapat mengonfigurasi layanan pengklasifikasi teks kustom dengan menentukan
config_defaultTextClassifierPackage
di
config.xml
.
Pengklasifikasi teks kustom dapat bergantung pada pengklasifikasi teks default dengan memanggil
TextClassifierService.getDefaultTextClassifierImplementation(Context)
untuk mendapatkan instance-nya.
InlineSuggestionRenderService
Komponen layanan InlineSuggestionRenderService
memungkinkan Saran Inline
ditampilkan di kolom saran keyboard. Layanan ini dipanggil untuk merender
objek View
yang menyimpan Saran Inline untuk alur Isi Otomatis Inline yang baru.
Implementasi default untuk layanan perender ini memanggil
androidx.autofill.inline.Renderer
untuk merender saran. Perilaku ini diverifikasi oleh pengujian CTS di
/autofillservice/cts/inline/
.
Nama paket
Perangkat yang menjalankan Android 11 harus menetapkan
config_servicesExtensionPackage
(di
frameworks/base/core/res/res/values/config.xml
) ke nama paket ExtServices (com.android.ext.services
). Perubahan konfigurasi ini diverifikasi oleh
pengujian CTS
cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
.
Batas modul
Di Android 12, kode modul ExtServices
dipindahkan dari frameworks/base/apex/extservices
(ini adalah subdirektori dari 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 class implementasi
TextClassifier
dari frameworks/base/core/
.
Format modul
Di Android 11, modul ExtServices
(com.android.ext.services
) dalam format
APEX. Di Android 10, modul ini dalam format APK.
Penyesuaian
Di Android 11, Anda dapat mengonfigurasi layanan pengklasifikasi teks kustom yang memanggil pengklasifikasi teks default (tetapi, hal ini tidak direkomendasikan). Di Android 10, modul ExtServices tidak menyediakan opsi penyesuaian.
Pengujian
Android Compatibility Test Suite (CTS) memverifikasi fungsi modul ExtServices dengan menjalankan serangkaian pengujian CTS yang komprehensif pada setiap rilis modul. Selain itu, Mainline Test Suite (MTS) juga berisi beberapa pengujian ExtServices. Daftar lengkap pengujian ExtServices adalah sebagai berikut:
Perubahan konfigurasi. Diverifikasi oleh pengujian CTS
cts/tests/tests/os/src/android/os/cts/RequiredComponentsTest.java
.Konfigurasi
TextClassifier
. Diverifikasi oleh pengujian CTScts/TextClassifierPolicyTest.java
.Saran inline isi otomatis. Diverifikasi oleh pengujian CTS di
cts/inline/
.