التفاصيل التقنية

يوضح الرسم البياني التالي مكونات النظام التي تتفاعل مع Dialer:

المكونات التي تتفاعل مع المسجل

الشكل 1. المكونات التي تتفاعل مع المسجل

  • واجهة مستخدم النظام. واجهة التنقل السفلية لاستضافة زر الهاتف، الذي يسجل intent:#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;package=com.android.car.dialer;launchFlags=0x10000000;end القصد. يؤدي هذا إلى بدء النشاط الرئيسي للمستخدم، TelecomActivity .

  • مشغل التطبيقات. يدير قائمة التطبيقات بأكملها. يعلن برنامج Dialer عن نشاط TelecomActivity باستخدام android.intent.category.LAUNCHER . يؤدي تحديد تطبيق الهاتف من قائمة تطبيقات المشغل إلى عرض TelecomActivity.

  • القطعة الرئيسية. في مرجع AOSP، لا توجد أداة الصفحة الرئيسية. قد يرغب مصنعو المعدات الأصلية في التفكير في إضافة أداة Home لـ Dialer لعرض حالة الهاتف المتصل حاليًا (بالإضافة إلى معلومات أخرى).

  • مركز إعلام

    • يتم عرض إشعار Heads Up (HUN) للمكالمات الواردة. عندما يتلقى Dialer InCallServiceImpl مكالمة واردة، يقوم Dialer بنشر HUN إلى مركز الإشعارات، والذي يعرض تفاصيل المكالمة، مثل رقم الهاتف أو معلومات الاتصال. يعرض برنامج Dialer أيضًا زري إجراء، هما الإجابة والرفض. من خلال النقر على زر الرد، يتم الرد على المكالمة ويتعامل InCallServiceImpl مع المكالمة النشطة لإظهار واجهة مستخدم المتصل المتصل ويرفض رقم HUN. يؤدي النقر فوق HUN إلى عرض صفحة InCall بملء الشاشة مع زري الإجابة والرفض.

    • يظهر إشعار للمكالمات الفائتة غير المقروءة. يؤدي النقر فوق الإشعار إلى عرض صفحة سجل المكالمات ووضع علامة على المكالمات الفائتة كمقروءة. يؤدي النقر فوق زر معاودة الاتصال إلى إجراء مكالمة وعرض واجهة مستخدم InCall الخاصة بـ Dialer.

  • مساعد. يمكن للمستخدمين أن يطلبوا من أحد المساعدين إجراء مكالمة قد تعرض واجهة مستخدم Dialer InCall.

  • خرائط جوجل. يؤدي الاتصال بتاجر من خرائط Google إلى إرسال نية DIAL مع أرقام هواتف إضافية والتي ستبدأ صفحة Dialpad للاتصال السريع.

  • CarInputService. يراقب المفتاح الفعلي لأزرار الاتصال وإنهاء المكالمة الموجودة على عجلة القيادة. الضغط على:

    • يقوم زر الاتصال الموجود على عجلة القيادة في حالة عدم وجود مكالمة واردة بإرسال هدف DIAL ويعرض صفحة Dialpad الخاصة بـ Dialer.

    • يؤدي زر الاتصال الموجود على عجلة القيادة عند وجود مكالمة واردة إلى قيام TelecomManager بالرد على المكالمة.

    • زر إنهاء المكالمة من عجلة القيادة عندما تكون هناك مكالمة واردة، يقوم TelecomManager بإنهاء المكالمة.

  • بلوتوث

    • PBAPClient. يقوم بتنزيل جهات الاتصال من الهاتف والكتابة إلى موفر جهات الاتصال. لكل هاتف متصل، يتم إنشاء حساب باستخدام عنوان Bluetooth MAC الخاص بالجهاز كاسم الحساب و com.android.bluetooth.pbapsink ( @string/pbap_account_type المحدد في packages/apps/Bluetooth ) كنوع الحساب. تتم كتابة جهات الاتصال المكتوبة إلى موفر جهات الاتصال مع معلومات الحساب ويتم مسحها عند قطع اتصال الهاتف. لا يتفاعل PBAPClient مباشرة مع Dialer ولكنه يكتب بدلاً من ذلك جهات الاتصال إلى موفر جهات الاتصال. يقوم المسجل بقراءة جهات الاتصال من موفر جهات الاتصال.

    • HfpClientConnectionService . يدير مكالمة Bluetooth من خلال HFP ويبلغ عن المكالمة إلى خدمات الاتصالات.

  • اتصالات. يدير إطار عمل Android Telecom مكالمات الصوت والفيديو على جهاز Android. نظرًا لأن Dialer هو تطبيق الهاتف الافتراضي، فإنه ينفذ واجهات برمجة تطبيقات InCallService وسيقوم InCallController بربط تطبيق InCallService الخاص بـ Dialer للتعامل مع المكالمات. للحصول على مزيد من التفاصيل، راجع إنشاء تطبيق هاتف بديل وأن تصبح تطبيق الهاتف الافتراضي .

  • اعدادات النظام. يقوم برنامج Dialer بمراقبة قائمة الأجهزة المتصلة بـ HFP ويعرض رسالة خطأ عند عدم اتصال أي هواتف ببرنامج Dialer عبر Bluetooth. في مرجع AOSP، يربط زر الاتصال بـ Bluetooth المستخدمين بصفحة إعدادات Bluetooth الخاصة بالنظام لإقران جهاز جديد أو للاتصال بجهاز مقترن.

  • محرك إلهاء السائق. تفرض خدمة نظام Android هذه قيودًا على تجربة المستخدم بناءً على حالة قيادة السيارة. يجب على Dialer تنفيذ جميع قيود تشتيت انتباه القيادة في UX. وللقيام بذلك، يجب على Dialer الاستماع إلى CarUXRestrictionManager وتنفيذ جميع السياسات. يجب على المتصل:

    • اتصل بمكتبة السيارات واحصل على مثيل CarUXRestrictionManager .

    • اشترك في التحديثات في قائمة CarUxRestrictions وقم بتنفيذها كما هو موثق.

    • ذات أهمية خاصة للمسجل:

      • صفحة الإعدادات مُحسّنة للمركبة. لم يتمكن المستخدم من الوصول إلى صفحة إعدادات المتصل أثناء القيادة. من خلال النقر على قائمة الإعدادات من شريط الإجراءات، يتم عرض شاشة حظر لمنع المستخدم من الوصول إلى الإعدادات أثناء القيادة. إذا كانت صفحة الإعدادات معروضة بالفعل، فستنبثق شاشة الحظر لإيقاف تفاعل المستخدم.

      • لا يمكن الوصول إلى إعدادات النظام أثناء القيادة. في صفحة الخطأ، في حالة عدم توصيل أي أجهزة Bluetooth، يعرض زر الاتصال بـ Bluetooth صفحة إعدادات Bluetooth الخاصة بالنظام. تم تقييد UXR لهذا الزر بالكامل. أثناء القيادة، يؤدي الضغط على هذا الزر إلى ظهور رسالة خطأ لإعلام المستخدم بإيقاف السيارة أولاً ثم القيام بالإجراء.

      • لا يمكن للمستخدم بدء تدفق الإضافة إلى المفضلة أثناء القيادة. تم تعطيل زر إضافة مفضلة.

تدفقات المستخدم

المسجل الرئيسي

يتم توفير الصفحات المختلفة لـ Dialer أدناه.

صفحة الاتصال الرئيسية

الشكل 2. صفحة الاتصال الرئيسية

التعامل مع المكالمات

يتم عرض تدفق عملية تسليم المكالمات أدناه:

التعامل مع المكالمات

الشكل 3. التعامل مع المكالمات

إشعارات

يتم عرض صفحات الإشعارات المختلفة أدناه:

إشعارات

الشكل 4. الإخطارات

حالة InCall

يظهر تدفق صفحة InCall أدناه:

صفحة InCall

الشكل 5. صفحة InCall

شاشات البحث هي:

يبحث

الشكل 6. البحث

إعدادات

خيارات الإعدادات هي:

إعدادات

الشكل 7. الإعدادات