ينقل نظام التشغيل Android 7.0 الوظائف ذات الصلة بإشعارات المكالمات من خدمة نظام الاتصالات في نظام Android الأساسي إلى تطبيق "برنامج الاتصال". في السابق، كانت مسؤولية عرض الإشعارات ذات الصلة بالمكالمات مُقسَّمة بين الاتصالات وتطبيق "برنامج الاتصال" التلقائي، ما يؤدي إلى حدوث تناقضات في السلوك. في نظام التشغيل Android 7.0، يتحمّل تطبيق "أداة الاتصال" كل مسؤولية التعامل مع إشعارات المكالمات.
السلوك في الإصدار 6.x من نظام التشغيل Android والإصدارات الأقدم
في إصدارات Android السابقة، كانت مسؤولية تطبيقَي Telecom وDialer مشترَكة على النحو التالي:
الوظائف | تمّت بواسطة شركة الاتصالات | تم من خلال تطبيق "الهاتف" |
---|---|---|
إشعار مكالمة واردة | نعم (رنين، اهتزاز) | نعم (عرض الإشعارات، ومعرّف المتصل) |
إرسال إلى البريد الصوتي | نعم | لا |
نغمة رنين مخصّصة | نعم | لا |
إشعارات المكالمات الفائتة | نعم | لا |
مؤشر الرسائل في انتظار الرد (الاتصال بالبريد الصوتي) | نعم (الاتصال الهاتفي) | لا |
إشعارات البريد الصوتي المرئي | لا | نعم |
في ما يلي أمثلة على السلوك غير المتّسق الناتج عن تقسيم المسؤوليات:
- كانت شركة الاتصالات مسؤولة عن تشغيل نغمة الرنين أو أداة الاهتزاز، ولكن كان تطبيق "أداة الاتصال" مسؤولاً عن عرض إشعار المكالمة الواردة. إذا كان تطبيق "أداة الاتصال" بطيئًا في البدء، قد يؤدي ذلك إلى بدء الرنين قبل بضع ثوانٍ من عرض إشعار المكالمة الواردة.
- كانت شركة الاتصالات مسؤولة عن عرض إشعارات المكالمات الفائتة. بما أنّه لا يمكن استخدام ميزات الملكية (مثل خدمة "معرف المتصل من Google") مع هذه الإشعارات، قد يؤدي ذلك إلى حدوث تناقضات بين إعلامات الاتصالات وواجهة مستخدم تطبيق "أداة الاتصال" (مثل سجلّ المكالمات).
السلوك في الإصدار 7.0 من Android والإصدارات الأحدث
ينفِّذ تطبيق "الهاتف" في "مشروع Android المفتوح المصدر" (AOSP) الوظيفة الجديدة. للتعرّف على التفاصيل، يُرجى الرجوع إلى المستندات التالية:
- إشعارات المكالمات الفائتة
Telecom/src/com/android/server/telecom/ui/MissedCallNotifierImpl.java
Dialer/android/dialer/calllog/MissedCallNotificationReceiver.java
Dialer/android/dialer/calllog/MissedCallNotifier.java - تشغيل نغمات الرنين:
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 - إشعارات البريد الصوتي
frameworks/base/telephony/java/android/telephony/TelephonyManager.java
Telephony/src/com/android/phone/PhoneInterfaceManager.java
Dialer/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java
نمط الإشعارات للمكالمات في الإصدار 12 من Android أو الإصدارات الأحدث
على الأجهزة التي تعمل بنظام التشغيل Android 12 أو إصدار أحدث، لتوفير
تجربة متّسقة للمستخدمين في المكالمات، ننصحك بأن تستخدم التطبيقات أسلوب الإشعار
CallStyle
للمكالمات الواردة والمكالمات الجارية.
لمزيد من المعلومات، يُرجى الاطّلاع على مقالة
إشعارات المكالمات الهاتفية الجديدة التي تتيح ترتيب أهمية المكالمات الواردة.
التنفيذ
قد يحتاج مورّدو الأجهزة إلى تعديل مكوّنات الاتصالات/الهاتف التي تُظهِر واجهات برمجة التطبيقات المتاحة للاستخدام من خلال تطبيق "الاتصال" التلقائي.