Android 7.0 di chuyển chức năng liên quan đến thông báo cuộc gọi từ dịch vụ hệ thống Viễn thông trong nền tảng Android sang ứng dụng Trình quay số. Trước đây, trách nhiệm hiển thị thông báo liên quan đến cuộc gọi được phân chia giữa Viễn thông và ứng dụng Trình quay số mặc định, tạo ra sự không nhất quán trong hành vi. Trong Android 7.0, Trình quay số chịu mọi trách nhiệm xử lý thông báo cuộc gọi.
Hành vi trong Android 6.x trở xuống
Trong các bản phát hành Android trước, Telecom và Dialer chia sẻ trách nhiệm như mô tả dưới đây:
Chức năng | Do Telecom thực hiện | Do Trình quay số thực hiện |
---|---|---|
Thông báo khi có cuộc gọi đến | Có (đổ chuông, rung) | Có (hiển thị thông báo, tên nhận dạng người gọi) |
Gửi tới thư thoại | Có | Không |
Nhạc chuông tuỳ chỉnh | Có | Không |
Thông báo cuộc gọi nhỡ | Có | Không |
Chỉ báo tin nhắn chờ (thư thoại) | Có (viễn thông) | Không |
Thông báo về thư thoại kèm theo hình ảnh | Không | Có |
Sau đây là ví dụ về hành vi không nhất quán do việc phân chia trách nhiệm này gây ra:
- Telecom chịu trách nhiệm khởi động chuông/máy rung, nhưng trình quay số chịu trách nhiệm hiển thị thông báo cuộc gọi đến. Nếu trình quay số khởi động chậm, thì chuông có thể bắt đầu đổ vài giây trước khi thông báo cuộc gọi đến hiển thị.
- Nhà mạng chịu trách nhiệm hiển thị thông báo cuộc gọi nhỡ. Vì các tính năng độc quyền (chẳng hạn như tính năng nhận dạng người gọi của Google) không hoạt động trên các thông báo này, nên điều này có thể dẫn đến sự không nhất quán giữa thông báo viễn thông và giao diện người dùng của Trình quay số (chẳng hạn như nhật ký cuộc gọi).
Hành vi trong Android 7.0 trở lên
Trình quay số Dự án nguồn mở Android (AOSP) triển khai chức năng mới. Để biết thông tin chi tiết, hãy tham khảo tài liệu sau:
- Thông báo cuộc gọi nhỡ
Telecom/src/com/android/server/telecom/ui/MissedCallNotifierImpl.java
Dialer/android/dialer/calllog/MissedCallNotificationReceiver.java
Dialer/android/dialer/calllog/MissedCallNotifier.java - Phát nhạc chuông:
frameworks/base/telecomm/java/android/telecom/InCallService.java
Telecom/src/com/android/server/telecom/InCallController.java
Dialer/java/com/android/incallui/ringtone/
Dialer/java/com/android/incallui/StatusBarNotifier.java - Thông báo VVM
frameworks/base/telephony/java/android/telephony/TelephonyManager.java
Telephony/src/com/android/phone/PhoneInterfaceManager.java
Dialer/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java
Kiểu thông báo cho cuộc gọi trên Android 12 trở lên
Đối với các thiết bị chạy Android 12 trở lên, để mang lại trải nghiệm nhất quán cho người dùng đối với các cuộc gọi, các ứng dụng nên sử dụng kiểu thông báo
CallStyle
cho các cuộc gọi đến và đang diễn ra.
Để biết thêm thông tin, hãy xem bài viết
Thông báo cuộc gọi điện thoại mới cho phép xếp hạng mức độ quan trọng của cuộc gọi đến.
Triển khai
Người triển khai thiết bị có thể cần cập nhật các thành phần Điện thoại/Viễn thông hiển thị các API có sẵn để Trình quay số mặc định sử dụng.