تصحيح الأخطاء والاختبار

تم تجهيز تطبيق "الهاتف" بإطار عمل مدمج لتصحيح الأخطاء والاختبار يتيح لك التحقّق من صحة ميزات تطبيق "الهاتف" بدون الحاجة إلى أجهزة جاهزة لإجراء المكالمات. ويؤدي ذلك إلى عدم الحاجة إلى البلوتوث والهواتف المتصلة التي تتوفّر فيها خدمة شبكة الجوّال. يوفّر إطار عمل اختبار تطبيق الاتصال (DTF) هذه العمليات المبسّطة:

  • عادةً ما يستغرق إعداد جهاز حقيقي للتحقّق من الأفكار بسرعة بعض الوقت.
  • يتطلب اختبار ميزات المكالمات المتعدّدة ثلاثة هواتف مزوّدة بشريحة SIM على الأقل، يتم استخدام هاتفين منها لإجراء المكالمات فقط.
  • تصحيح أخطاء تطبيق "أداة الاتصال" والموارد التابعة له

بما أنّ وظائف تطبيق "أداة الاتصال" تعتمد على عدة مجموعات تقنية، بما في ذلك الاتصالات عن بُعد والهاتف ومقاييس البلوتوث للاستخدام بدون اليدين (HFP)، يمكن أن تؤدي الأخطاء والمشاكل التي تظهر في هذه المجموعات إلى عدم استقرار تطبيق "أداة الاتصال". يتيح DTF تشغيل تطبيق "الاتصال" بشكل مستقل عن هذه التبعيات.

الميزات

توفّر ميزة "الملف الشخصي للإعلان" الميزات التالية:

  • موضع المكالمة: إجراء المكالمات وتلقّيها بدون الحاجة إلى جهاز جاهز للمكالمات من خلال المحطة الطرفية باستخدام بث Android Debug Bridge (adb)
  • المكالمات الوهمية: تمّت محاكاة وظيفة الاتصال. ويشمل ذلك الانتظار وكتم الصوت والدمج وإيقاف الاتصال.

استخدام ملف DTF

ملاحظة: لا يتوفّر "وضع القيادة الذكية" إلا في الإصدار 11 من نظام التشغيل Android أو الإصدارات الأحدث.

لاستخدام ملف DTF:

  1. يمكنك إنشاء إصدار CarDialerAppForTesting وتثبيته على النحو التالي:
    cd %rRepoRoot%/packages/apps/Car/Dialer
    
    m CarDialerAppForTesting
    
    adb install %rRepoRoot%/out/target/product/%buildTarget%/system/priv-app/CarDialerAppForTesting/CarDialerAppForTesting.apk
    

    ونتيجةً لذلك، يحلّ تطبيق CarDialerAppForTesting محل تطبيق "أداة الاتصال" الأصلي على الجهاز الاختباري.

    لا تعمل CarDialerAppForTesting مع الأجهزة الحقيقية. للاختبار باستخدام جهاز حقيقي، أعِد تثبيت CarDialerApp.apk.

الطلبات الصوتية

لا تعمل أوامر adb التالية إلا بعد تشغيل تطبيق Dialer لأول مرة وتتطلّب تهيئة أداة استقبال البث. بعد تشغيل تطبيق "الهاتف"، يجب توصيل جهاز بلوتوث اصطناعي. لإجراء ذلك، استخدِم الأمر التالي (إعداد) ربط جهاز.

(الإعداد) ربط جهاز

يُنشئ اتصالاً زائفًا عبر البلوتوث مع تطبيق "أداة الاتصال"، ويجب الاتصال به أولاً لتفعيل الوصول إلى جميع الطلبات المتعلّقة بالمكالمات.

لربط جهاز:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "connect"

ملاحظة: لا يمكن استخدام كلٍّ من الطلبات التالية إلا بعد توصيل جهاز بلوتوث مزيّف.

إجراء مكالمة صادرة

لإجراء مكالمة صادرة:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "addCall" --es "id" "4085524874"

تلقّي مكالمة واردة

لتلقّي مكالمة واردة:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "rcvCall" --es "id" "4085524874"

إنهاء مكالمة

لإنهاء مكالمة:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "endCall" --es "id" "4085524874"

تعليق المكالمة الحالية

لإيقاف المكالمة الحالية مؤقتًا:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "holdCall"

إلغاء تعليق المكالمة الحالية

لإلغاء وضع الانتظار للمكالمة الحالية:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"

دمج المكالمات

دمج المكالمة الأساسية والمكالمة الثانوية في مكالمة جماعية لا يعمل هذا الأمر إلا عند توفّر كلاً من المكالمتَين الأساسية والثانوية. تُعدّ المكالمة الجماعية الحالية ملفًا شخصيًا واحدًا.

لدمج المكالمات:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "unholdCall"

محو جميع المكالمات

لإزالة جميع المكالمات في قائمة المكالمات، اتّبِع الخطوات التالية:

adb shell am broadcast -a com.android.car.dialer.intent.action.adb --es "action" "clearAll"

إصدار المحاكي

قد يحتاج المطوّرون أحيانًا إلى اختبار تغييرات واجهة المستخدم على جهاز محاكاة. في هذه الحالات، يقدّمCarDialerAppEmulatorBuild عملية إعداد مبسّطة ووظائف محدودة مقارنةً بـ DTF الأكثر فعالية.

بيانات الاختبار

عند تشغيل تطبيق "المخطّط الداعم"، يتم تجاوز صفحة الخطأ المتعلّقة بالبلوتوث ويتم عرض المحتوى الرئيسي لتطبيق TelecomActivity. يتم عرض جهات الاتصال وسجلات المكالمات على الجهاز المحلي. يمكن للمطوّرين استخدام تطبيق "جهات الاتصال" المتوفّر في الجهاز لإنشاء جهات اتصال اختبارية أو لاستيراد ملف .vcf.

محاكاة المكالمات

لمحاكاة المكالمات الواردة، استخدِم "محاكي Android" لإرسال أوامر Telnet. لمزيد من المعلومات، يُرجى الاطّلاع على مقالتَي تشغيل التطبيقات على "محاكي Android" وإرسال أوامر وحدة تحكّم المحاكي.

telnet localhost 5554
gsm call xxx-xxx-xxxx

يؤدي إجراء مكالمة هاتفية في تطبيق Dialer أو بث نية اتصال إلى بدء مكالمة صادرة.

adb shell am start -a android.intent.action.CALL tel:xxx-xxx-xxxx