اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
إشعارات المكالمات
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
ينقل نظام التشغيل Android 7.0 الوظائف ذات الصلة بإشعارات المكالمات من
خدمة نظام الاتصالات في نظام Android الأساسي إلى تطبيق "برنامج الاتصال".
في السابق، كانت مسؤولية عرض الإشعارات ذات الصلة بالمكالمات مُقسَّمة بين الاتصالات وتطبيق "برنامج الاتصال" التلقائي، ما يؤدي إلى حدوث تناقضات في
السلوك. في نظام التشغيل Android 7.0، يتحمّل تطبيق "أداة الاتصال" كل مسؤولية التعامل مع
إشعارات المكالمات.
السلوك في الإصدار 6.x من نظام التشغيل Android والإصدارات الأقدم
في إصدارات Android السابقة، كانت مسؤولية تطبيقَي Telecom وDialer مشترَكة على النحو التالي:
الوظائف |
تمّت بواسطة شركة الاتصالات |
تم من خلال تطبيق "الهاتف" |
إشعار مكالمة واردة |
نعم (رنين، اهتزاز) |
نعم (عرض الإشعارات، ومعرّف المتصل) |
إرسال إلى البريد الصوتي |
نعم |
لا |
نغمة رنين مخصّصة |
نعم |
لا |
إشعارات المكالمات الفائتة |
نعم |
لا |
مؤشر الرسائل في انتظار الرد (الاتصال بالبريد الصوتي) |
نعم (الاتصال الهاتفي) |
لا |
إشعارات البريد الصوتي المرئي |
لا |
نعم |
في ما يلي أمثلة على السلوك غير المتّسق الناتج عن تقسيم المسؤوليات:
- كانت شركة الاتصالات مسؤولة عن تشغيل نغمة الرنين أو أداة الاهتزاز، ولكن كان تطبيق "أداة الاتصال"
مسؤولاً عن عرض إشعار المكالمة الواردة. إذا كان تطبيق "أداة الاتصال" بطيئًا في البدء، قد يؤدي ذلك إلى بدء الرنين قبل بضع ثوانٍ من عرض إشعار المكالمة الواردة.
- كانت شركة الاتصالات مسؤولة عن عرض إشعارات المكالمات الفائتة. بما أنّه لا يمكن استخدام ميزات الملكية (مثل خدمة "معرف المتصل من Google") مع
هذه الإشعارات، قد يؤدي ذلك إلى حدوث تناقضات بين إعلامات الاتصالات
وواجهة مستخدم تطبيق "أداة الاتصال" (مثل سجلّ المكالمات).
السلوك في الإصدار 7.0 من Android والإصدارات الأحدث
ينفِّذ تطبيق "الهاتف" في "مشروع Android المفتوح المصدر" (AOSP) الوظيفة الجديدة. للتعرّف على التفاصيل، يُرجى الرجوع إلى المستندات التالية:
نمط الإشعارات للمكالمات في الإصدار 12 من Android أو الإصدارات الأحدث
على الأجهزة التي تعمل بنظام التشغيل Android 12 أو إصدار أحدث، لتوفير
تجربة متّسقة للمستخدمين في المكالمات، ننصحك بأن تستخدم التطبيقات أسلوب الإشعار
CallStyle
للمكالمات الواردة والمكالمات الجارية.
لمزيد من المعلومات، يُرجى الاطّلاع على مقالة
إشعارات المكالمات الهاتفية الجديدة التي تتيح ترتيب أهمية المكالمات الواردة.
التنفيذ
قد يحتاج مورّدو الأجهزة إلى تعديل مكوّنات الاتصالات/الهاتف التي تُظهِر واجهات برمجة التطبيقات المتاحة للاستخدام من خلال تطبيق "الاتصال" التلقائي.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-06-18 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-06-18 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Call notifications\n\nAndroid 7.0 moves functionality related to call notifications from the\nTelecom system service in the Android platform to the Dialer app.\nPreviously, the responsibility for displaying call-related notifications was\nsplit between Telecom and the default Dialer app, creating inconsistencies in\nbehavior. In Android 7.0, the Dialer assumes all responsibility for handling\ncall notifications.\n\nBehavior in Android 6.x and lower\n---------------------------------\n\nIn earlier Android releases, Telecom and Dialer split responsibilities as\ndescribed below:\n\n| Functionality | Done by Telecom | Done by Dialer |\n|--------------------------------------------|------------------------|---------------------------------------|\n| Incoming call notification | Yes (ringing, vibrate) | Yes (notification display, caller ID) |\n| Send to voicemail | Yes | No |\n| Custom ringtone | Yes | No |\n| Missed call notifications | Yes | No |\n| Message Waiting Indicator (call voicemail) | Yes (telephony) | No |\n| Visual voicemail notifications | No | Yes |\n\nExamples of inconsistent behavior caused by this responsibility split\nincluded:\n\n- Telecom was responsible for starting the ringer/vibrator, but the dialer was responsible for displaying the incoming call notification. If the dialer is slow to startup, this can result in ringing starting several seconds before the incoming call notification is displayed.\n- Telecom was responsible for displaying missed call notifications. As proprietary features (such as Google caller ID) do not work on these notifications, this could result in inconsistencies between Telecom notifications and Dialer UI (such as the call log).\n\nBehavior in Android 7.0 and higher\n----------------------------------\n\nThe Android Open Source Project (AOSP) Dialer implements the new\nfunctionality. For details, refer to the following documentation:\n\n- Missed call notifications \n [Telecom/src/com/android/server/telecom/ui/MissedCallNotifierImpl.java](https://android.googlesource.com/platform/packages/services/Telecomm/+/android16-release/src/com/android/server/telecom/ui/MissedCallNotifierImpl.java) \n [Dialer/android/dialer/calllog/MissedCallNotificationReceiver.java](https://android.googlesource.com/platform/packages/apps/Dialer/+/android16-release/java/com/android/dialer/app/calllog/MissedCallNotificationReceiver.java) \n [Dialer/android/dialer/calllog/MissedCallNotifier.java](https://android.googlesource.com/platform/packages/apps/Dialer/+/android16-release/java/com/android/dialer/app/calllog/MissedCallNotifier.java)\n- Playing ringtones: \n [frameworks/base/telecomm/java/android/telecom/InCallService.java](https://android.googlesource.com/platform/frameworks/base/+/android16-release/telecomm/java/android/telecom/InCallService.java) \n [Telecom/src/com/android/server/telecom/InCallController.java](https://android.googlesource.com/platform/packages/services/Telecomm/+/android16-release/src/com/android/server/telecom/InCallController.java) \n [Dialer/java/com/android/incallui/ringtone/](https://android.googlesource.com/platform/packages/apps/Dialer/+/android16-release/java/com/android/incallui/ringtone/) \n [Dialer/java/com/android/incallui/StatusBarNotifier.java](https://android.googlesource.com/platform/packages/apps/Dialer/+/android16-release/java/com/android/incallui/StatusBarNotifier.java)\n- VVM notifications \n [frameworks/base/telephony/java/android/telephony/TelephonyManager.java](https://android.googlesource.com/platform/frameworks/base/+/android16-release/telephony/java/android/telephony/TelephonyManager.java) \n [Telephony/src/com/android/phone/PhoneInterfaceManager.java](https://android.googlesource.com/platform/packages/services/Telephony/+/android16-release/src/com/android/phone/PhoneInterfaceManager.java) \n [Dialer/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java](https://android.googlesource.com/platform/packages/apps/Dialer/+/nougat-release/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java)\n\nNotification style for calls in Android 12 or higher\n----------------------------------------------------\n\nFor devices running Android 12 or higher, to provide\na consistent user experience for calls, we recommend that apps use the\n[`CallStyle`](https://developer.android.com/reference/android/app/Notification.CallStyle) notification style for incoming and ongoing calls.\nFor more information, see\n[New phone call notifications allowing for ranking importance of incoming\ncalls](https://developer.android.com/about/versions/12/features#new-calls).\n\nImplementation\n--------------\n\nDevice implementers may need to update Telecom/Telephony components that\nexpose APIs available for use by the default Dialer."]]