Aplikasi Setelan Android menyediakan daftar saran kepada pengguna di Android 8.0. Saran ini biasanya mempromosikan fitur ponsel, dan dapat disesuaikan (misalnya, "Tetapkan jadwal Jangan Ganggu" atau "Aktifkan Panggilan Wi-Fi"). Fitur ini memberikan peringkat untuk saran, berdasarkan sinyal kontekstual atau interaksi sebelumnya pengguna dengan saran.
Model peringkat Android Open Source Project (AOSP) default saat ini didasarkan pada interaksi pengguna sebelumnya dengan saran, yang merupakan model linear sederhana yang dilatih dengan regresi logistik untuk memberi bobot yang tepat pada sinyal interaksi. Implementasi default menggunakan saran yang ditampilkan, diklik, atau ditutup sebagai indikator beserta keaktualan peristiwa ini untuk menentukan peringkat saran dan meningkatkan peluang memprediksi interaksi pengguna dengan saran ini. Model ini dibuat dengan jumlah data pengguna yang login yang terbatas. Produsen perangkat (OEM) dapat mengembangkan model peringkat mereka sendiri berdasarkan data yang dikumpulkan dan berpotensi menyertakan sinyal kontekstual serta mengkalibrasi peringkat.
Implementasi
Temukan implementasi packages/apps/Settings/src/com/android/settings/dashboard/suggestions/SuggestionRanker.java
default di AOSP.
Fitur ini dilindungi oleh flag, isSmartSuggestionEnabled
, yang
ditetapkan ke false secara default. Jika diaktifkan (ditetapkan ke benar), fitur ini beroperasi
tanpa modifikasi tambahan menggunakan implementasi AOSP default. OEM dapat
menggunakan implementasi default atau memperkenalkan implementasi mereka sendiri untuk
mengaktifkan fitur ini.
OEM dapat menyesuaikan fitur dengan menerapkan fitur platform/packages/apps/Settings/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java
dan Mengganti metode rankSuggestions
file.
Metode ini mendapatkan dua daftar yang berisi Kartu saran dan
suggestionIds yang sesuai. Metode ini hanya akan mengurutkan ulang kartu dalam daftar sesuai
dengan skor peringkat yang diinginkan. suggestionIds dapat digunakan untuk mengidentifikasi
saran secara unik dan mengekstrak informasi sebelumnya yang diperlukan tentang saran,
bergantung pada penerapan peringkat (misalnya, keaktualan interaksi dengan
saran tertentu ini).
Validasi
Implementator dapat memastikan versi fitur mereka berfungsi sebagaimana mestinya dengan
menulis pengujian unit mereka sendiri yang mirip dengan packages/apps/Settings/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionRankerTest.java
untuk memverifikasi peringkat.