Di Android 10, layanan saran akun telepon memungkinkan saran akun telepon ditampilkan kepada pengguna saat melakukan panggilan. Misalnya, untuk pengguna dengan perangkat dengan beberapa SIM dan tarif panggilan intra-jaringan yang lebih rendah, layanan ini terlebih dahulu mengidentifikasi operator penerima panggilan dan kemudian menyarankan penggunaan SIM di jaringan yang sama dengan penerima panggilan.
Layanan saran akun telepon bersifat opsional dan dapat diterapkan pada perangkat yang menjalankan Android 10 atau lebih tinggi.
Penerapan
Untuk menerapkan saran akun telepon, terapkan satu layanan PhoneAccountSuggestionService
di aplikasi yang terletak di /system/priv-app/
. Layanan ini tidak ditanyakan jika lebih dari satu PhoneAccountSuggestionService
diterapkan. Layanan harus mendeklarasikan izin android.Manifest.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE
.
Saat pengguna melakukan panggilan keluar yang akun telepon keluar default maupun akun telepon pilihannya tidak ditetapkan untuk penerima panggilan, layanan telekomunikasi terikat ke PhoneAccountSuggestionService
untuk mengumpulkan informasi tentang akun tersebut, onAccountSuggestionRequest(String number)
dipanggil, dan panggilan keluar proses ditangguhkan.
PhoneAccountSuggestionService
harus memanggil suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions)
dengan nomor yang dikembalikan oleh onAccountSuggestionRequest(String number)
.
Saat suggestPhoneAccounts(String number, List<PhoneAccountSuggestion> suggestions)
dipanggil, layanan telekomunikasi mengembalikan daftar akun telepon yang disarankan. Dialer kemudian harus menampilkan daftar akun telepon yang disarankan agar pengguna dapat memilih untuk melakukan panggilan.
Saran Akun Telepon
Untuk memberikan saran, gunakan kelas PhoneAccountSuggestion . Misalnya, jika layanan menentukan bahwa penerima panggilan berada pada operator yang sama dengan salah satu SIM di perangkat, layanan harus menandai akun telepon dengan REASON_INTRA_CARRIER
. Informasi ini kemudian dapat disampaikan kepada pengguna melalui dialer.
Misalnya, dalam situasi di mana pengguna telah mengkonfigurasi perangkat untuk menggunakan SIM kantor untuk semua kontak di akun Google kantor, layanan harus menandai akun telepon dengan REASON_USER_SET
dan menyetel shouldAutoSelect
ke true untuk memungkinkan dialer melewati dialog pemilihan dan secara otomatis melakukan panggilan menggunakan akun telepon.
Untuk informasi tentang saran lainnya, lihat PhoneAccountSuggestion
.
Pemanggil
Saat panggilan memasuki status STATE_SELECT_PHONE_ACCOUNT
, dialer harus menggunakan informasi dari PhoneAccountSuggestion
untuk menangani EXTRA_SUGGESTED_PHONE_ACCOUNTS
.
Menonaktifkan layanan
Untuk menyesuaikan penerapan bagi operator tertentu, Anda dapat mengaktifkan atau menonaktifkan layanan menggunakan setComponentEnabledSetting
. Layanan ini tidak ditanyakan jika dinonaktifkan.
Implementasi sistem UI
Bergantung pada penerapan Anda, perubahan pada UI sistem mungkin diperlukan. Misalnya, untuk memungkinkan pengguna menentukan bahwa semua panggilan ke kontak tertentu dilakukan dari akun telepon tertentu, Anda harus menerapkan alur penyiapan dan UI pengaturan yang disesuaikan untuk perangkat.
Validasi
Untuk memvalidasi penerapan Anda, jalankan pengujian CTS berikut: