Android 7.0 memindahkan fungsionalitas yang terkait dengan notifikasi panggilan dari layanan sistem Telecom di platform Android ke aplikasi Dialer. Sebelumnya, tanggung jawab untuk menampilkan notifikasi terkait panggilan dibagi antara Telecom dan aplikasi Dialer default, sehingga menimbulkan inkonsistensi dalam perilaku. Di Android 7.0, Dialer memikul semua tanggung jawab untuk menangani pemberitahuan panggilan.
Perilaku di Android 6.x dan sebelumnya
Dalam rilis Android sebelumnya, Telecom dan Dialer membagi tanggung jawab seperti yang dijelaskan di bawah ini:
Kegunaan | Dilakukan oleh Telecom | Dilakukan oleh Dialer |
---|---|---|
Pemberitahuan panggilan masuk | Ya (berdering, bergetar) | Ya (tampilan notifikasi, ID penelepon) |
Kirim ke pesan suara | Ya | Tidak |
Nada dering khusus | Ya | Tidak |
Notifikasi panggilan tak terjawab | Ya | Tidak |
Indikator Menunggu Pesan (pesan suara panggilan) | Ya (telepon) | Tidak |
Pemberitahuan pesan suara visual | Tidak | Ya |
Contoh perilaku tidak konsisten yang disebabkan oleh pembagian tanggung jawab ini meliputi:
- Telecom bertanggung jawab untuk memulai dering/vibrator, tetapi dialer bertanggung jawab untuk menampilkan pemberitahuan panggilan masuk. Jika dialer lambat untuk memulai, ini dapat mengakibatkan dering dimulai beberapa detik sebelum pemberitahuan panggilan masuk ditampilkan.
- Telecom bertanggung jawab untuk menampilkan pemberitahuan panggilan tidak terjawab. Karena fitur eksklusif (seperti ID penelepon Google) tidak berfungsi pada notifikasi ini, hal ini dapat mengakibatkan inkonsistensi antara notifikasi Telecom dan UI Dialer (seperti log panggilan).
Perilaku di Android 7.0 dan yang lebih baru
Android Open Source Project (AOSP) Dialer mengimplementasikan fungsionalitas baru. Untuk detailnya, lihat dokumentasi berikut:
- Notifikasi panggilan tak terjawab
Telecom/src/com/android/server/telecom/ui/MissedCallNotifierImpl.java
Dialer/android/dialer/calllog/MissedCallNotificationReceiver.java
Dialer/android/dialer/calllog/MissedCallNotifier.java - Memutar nada dering:
frameworks/base/telecomm/java/android/telecom/InCallService.java
Telecom/src/com/android/server/telecom/InCallController.java
Dialer/java/com/android/incallui/nada dering/
Dialer/java/com/android/incallui/StatusBarNotifier.java - Pemberitahuan VVM
frameworks/base/telephony/java/android/telephony/TelephonyManager.java
Telephony/src/com/android/phone/PhoneInterfaceManager.java
Dialer/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java
Gaya notifikasi untuk panggilan di Android 12 atau lebih tinggi
Untuk perangkat yang menjalankan Android 12 atau lebih tinggi, untuk memberikan pengalaman pengguna yang konsisten untuk panggilan, sebaiknya aplikasi menggunakan gaya notifikasi CallStyle
untuk panggilan masuk dan panggilan berkelanjutan. Untuk informasi lebih lanjut, lihat Pemberitahuan panggilan telepon baru yang memungkinkan peringkat kepentingan panggilan masuk .
Penerapan
Pelaksana perangkat mungkin perlu memperbarui komponen Telecom/Telephony yang mengekspos API yang tersedia untuk digunakan oleh Dialer default.