Layanan Ekst

Modul ExtServices memperbarui komponen kerangka kerja untuk fungsionalitas inti OS, seperti peringkat notifikasi, strategi pencocokan teks isiotomatis, cache penyimpanan, pengawas paket, dan layanan lain yang terus berjalan. Modul ini dapat diperbarui, artinya dapat menerima pembaruan untuk fungsionalitas di luar siklus rilis Android normal.

Komponen layanan

Modul ExtServices berisi layanan berikut.

Layanan DisplayHashing

Di Android 12, DisplayHashingService digunakan untuk menghasilkan instance DisplayHash untuk buffer yang ditentukan. Ini juga digunakan untuk memverifikasi bahwa hash tampilan tertentu dihasilkan oleh sistem. Saat membuat hash tampilan, pemanggil dapat menentukan algoritme hashing yang didukung mana yang ingin digunakan.

Layanan Pengklasifikasi Teks

Komponen layanan TextClassifierService mendukung API TextClassifier dan fitur Android seperti pemilihan teks cerdas dan saran cerdas dalam pemberitahuan. Modul ExtServices berisi pengklasifikasi teks default, yang diverifikasi oleh tes CTS TextClassifierPolicyTest.java .

Jika diperlukan, Anda dapat mengonfigurasi layanan pengklasifikasi teks khusus dengan menentukan config_defaultTextClassifierPackage di config.xml . Pengklasifikasi teks kustom dapat bergantung pada pengklasifikasi teks default dengan memanggil TextClassifierService.getDefaultTextClassifierImplementation(Context) untuk mendapatkan turunannya.

LayananSaranSaran Sebaris

Komponen layanan InlineSuggestionRenderService memungkinkan Saran Sebaris ditampilkan di strip saran keyboard. Layanan ini dipanggil untuk merender objek View yang menyimpan Saran Sebaris untuk alur IsiOtomatis Sebaris yang baru. Implementasi default untuk layanan perender ini memanggil androidx.autofill.inline.Renderer untuk merender saran. Perilaku ini diverifikasi oleh tes CTS di /autofillservice/cts/inline/ .

Nama paket

Perangkat yang menjalankan Android 11 harus menyetel config_servicesExtensionPackage (dalam frameworks/base/core/res/res/values/config.xml ) ke nama paket ExtServices ( com.android.ext.services ). Perubahan konfigurasi ini diverifikasi oleh tes 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 proyek baru untuk packages/modules/ExtServices adalah sebagai berikut:

  • apex/ (file dari frameworks/base/apex/extservices )
  • java/ (file dari packages/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 ada di dalam packages/modules/ExtServices . Android 11 juga memindahkan beberapa kelas 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.

Menyesuaikan

Di Android 11, Anda dapat mengonfigurasi layanan pengklasifikasi teks khusus yang memanggil pengklasifikasi teks default (namun, ini tidak disarankan). Di Android 10, modul ExtServices tidak menyediakan opsi penyesuaian.

Pengujian

Android Compatibility Test Suite (CTS) memverifikasi fungsionalitas modul ExtServices dengan menjalankan serangkaian pengujian CTS yang komprehensif pada setiap rilis modul. Selain itu, Mainline Test Suite (MTS) juga berisi beberapa tes ExtServices. Daftar lengkap tes ExtServices adalah sebagai berikut: