ניפוי באגים ובדיקה

החייגן כולל מסגרת משולבת לניפוי באגים ובדיקה שמאפשרת לכם לאמת תכונות של אפליקציית החייגן ללא צורך במכשירים שמוכנים להתקשרות. זה מבטל את הצורך עבור Bluetooth וטלפונים מחוברים עם שירות סלולרי. מסגרת בדיקת החייגן (DTF) מפשט את התהליכים הבאים:

  • בדרך כלל נדרש זמן להגדיר מכשיר אמיתי לצורך אימות מהיר של רעיונות.
  • כדי לבדוק תכונות של קריאות מרובות נדרשים לפחות שלושה טלפונים שמצוידים בכרטיס SIM, שניים המשמשים לביצוע שיחות בלבד.
  • ניפוי באגים בחייגן ויחסי התלות שלו.

מאחר שהפונקציונליות של החייגן תלויה במספר סטאקים של טכנולוגיות, כולל טלקומוניקציה, טלפוניה, ו-Bluetooth Hands Free Profile (HFP), באגים ובעיות שנובעים מיחסי התלות האלה לגרום לחוסר פעילות של החייגן. ה-DTF מאפשר ל'חייגן' לפעול בנפרד מיחסי התלות האלה.

תכונות

ה-DTF מספק את התכונות הבאות:

  • מיקום מודעה להתקשרות. ביצוע וקבלה של שיחות ללא צורך המכשיר המוכן להתקשרות באמצעות המסוף, עם גשר לניפוי באגים ב-Android (adb) שידור.
  • שיחות הדמיה. דוגמה לתכונות השיחה. זה כולל החזקה, השתקה, מיזוג וניתוק.

שימוש ב-DTF

הערה: ה-DTF זמין רק ב-Android מגרסה 11 ואילך.

כדי להשתמש ב-DTF:

  1. יוצרים ומתקינים את וריאנט ה-build של 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 הבאות פועלות רק לאחר הפעלת החייגן בפעם הראשונה ומחייבות מקלט השידור יופעל. לאחר הפעלת החייגן, יש צורך שמכשיר Bluetooth מזויף להיות מחוברים. לשם כך, משתמשים בפקודה הבאה (הגדרה) שאפשר לחבר למכשיר.

(הגדרה) חיבור מכשיר

יוצר חיבור Bluetooth מזויף לחייגן וצריך להפעיל אותו קודם כדי לאפשר גישה לכל הפקודות הקשורות לשיחות.

כדי לחבר מכשיר:

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

הערה: רק לאחר שחובר מכשיר Bluetooth מזויף, כל אחד להשתמש בפקודות הבאות.

ביצוע שיחה יוצאת

כדי לבצע שיחה יוצאת:

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"

גרסת אמולטור build

לפעמים מפתחים רוצים לבדוק שינויים בממשק המשתמש באמצעות אמולטור. במקרים כאלה, CarDialerAppEmulatorBuild מספק הגדרה פשוטה יותר ופונקציונליות מוגבלת בהשוואה ל-DTF החזקה יותר.

נתוני הבדיקה

כאשר החייגן מופעל, מתבצעת עקיפה של דף השגיאה של Bluetooth והתוכן העיקרי של TelecomActivity מוצג. אנשי הקשר ויומני השיחות מוצגים במכשיר. המפתחים יכולים להשתמש באפליקציית המלאי 'אנשי קשר' כדי ליצור אנשי קשר לבדיקה או כדי לייבא קובץ .vcf.

העמדת פנים של שיחה לועגת

כדי לדמות שיחות נכנסות, צריך להשתמש באמולטור Android לשליחת פקודות Telnet. מידע נוסף זמין במאמר הבא: איך מפעילים אפליקציות באמולטור Android וגם שליחת פקודות במסוף האמולטור

telnet localhost 5554
gsm call xxx-xxx-xxxx

ביצוע שיחת טלפון באפליקציית 'חייגן' או שידור של כוונת שיחה יובילו לשיחה יוצאת.

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