ניפוי באגים מרחוק במכשירי Android

Sofia Emelianova
Sofia Emelianova

ניפוי באגים מרחוק עם תוכן חי במכשיר Android ממחשב Windows , Mac או Linux. במדריך הזה תלמדו:

  • אפשר להגדיר את מכשיר Android לניפוי באגים מרחוק ולגלות אותו ממכונת הפיתוח.
  • בדיקה של תוכן בשידור חי במכשיר Android וניפוי באגים ממכונת הפיתוח.
  • הקלטת תוכן ממכשיר Android במכונה של כלי פיתוח במכונת הפיתוח.

תרשים לניפוי באגים מרחוק

שלב 1: מכירים את מכשיר Android

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

  1. פותחים את המסך אפשרויות למפתחים במכשיר Android. למידע נוסף, ראו הגדרת אפשרויות למפתחים במכשיר.
  2. בוחרים באפשרות הפעלה של ניפוי באגים ב-USB.
  3. פותחים את Chrome במחשב הפיתוח.
  4. לעבור אל chrome://inspect#devices.
  5. צריך לוודא שהאפשרות תיבת סימון. Discover התקני USB מופעלת.

    תיבת הסימון Discover התקני USB מופעלת.

  6. מחברים את מכשיר Android ישירות למכשיר הפיתוח באמצעות כבל USB.

  7. אם מחברים את המכשיר בפעם הראשונה, הוא יופיע במצב 'אופליין' ובהמתנה לאימות.

    המכשיר אופליין ממתין לאימות.

    במקרה כזה, מאשרים את הבקשה להפעלת ניפוי הבאגים במסך המכשיר.

  8. אם מופיע שם הדגם של מכשיר Android, המשמעות היא שכלי הפיתוח יצרו בהצלחה את החיבור למכשיר.

    מכשיר מחובר בהצלחה שצוין עם שם דגם.

  9. ממשיכים לשלב 2.

פתרון בעיות: כלי הפיתוח לא מזהים את מכשיר Android

יש לוודא שהחומרה מוגדרת בצורה נכונה:

  • אם משתמשים במפצל USB, כדאי במקום זאת לחבר את מכשיר Android ישירות למכונת הפיתוח.
  • נסו לנתק את כבל ה-USB בין מכשיר Android למכשיר הפיתוח, ואז לחבר אותו בחזרה. אפשר לעשות זאת בזמן שהמסכים של מכשירי Android ומכשירי הפיתוח לא נעולים.
  • מוודאים שכבל ה-USB פועל. אמורה להיות אפשרות לבדוק קבצים במכשיר Android ממכונת הפיתוח.

מוודאים שהתוכנה מוגדרת בצורה נכונה:

אם ההודעה לאפשר ניפוי באגים ב-USB לא מופיעה במכשיר Android, נסו לבצע את הפעולות הבאות:

  • עליך לנתק את כבל ה-USB ואז לחבר אותו מחדש בזמן שכלי הפיתוח נמצאים במכונת הפיתוח, ומסך הבית של Android מוצג. במילים אחרות, לפעמים ההנחיה לא מופיעה כשהמסכים של מכשיר Android או מכונת הפיתוח נעולים.
  • עדכון הגדרות התצוגה של מכשיר Android ומכונת הפיתוח כך שהם אף פעם לא יעברו למצב שינה.
  • הגדרת מצב USB ב-Android ל-PTP. ראו Galaxy S4 לא מציג את תיבת הדו-שיח 'הרשאה לניפוי באגים ב-USB'.
  • בוחרים באפשרות ביטול הרשאות לניפוי באגים ב-USB במסך אפשרויות למפתחים במכשיר Android כדי לאפס אותו למצב רענן.

אם לא מוצאים פתרון שלא מוזכר בקטע הזה או במאמר מכשירי כלי הפיתוח ל-Chrome לא מזהים את המכשיר כשהוא מחובר לחשמל, אפשר להוסיף תשובה לשאלה הזו ב-Stack Overflow או לפתוח בעיה במאגר Developer.chrome.com!

שלב 2: ניפוי באגים בתוכן במכשיר Android ממכונת הפיתוח

  1. פותחים את Chrome במכשיר Android.
  2. ב-chrome://inspect/#devices במחשב הפיתוח, מופיע שם הדגם של מכשיר Android ואחריו המספר הסידורי. מתחתיו אפשר לראות את גרסת Chrome שפועלת במכשיר, כשמספר הגרסה מופיע בסוגריים.

    גרסת Chrome שפועלת במכשיר.

  3. בתיבת הטקסט כרטיסייה פתוחה עם כתובת URL, מזינים כתובת URL ולוחצים על פתיחה. הדף נפתח בכרטיסייה חדשה במכשיר ה-Android.

    כרטיסייה מרוחקת שמופיעה בקטע.

    לכל כרטיסייה מרחוק ב-Chrome יש קטע משלה בchrome://inspect/#devices. בקטע הזה תוכלו לבצע אינטראקציה עם הכרטיסייה. אם יש אפליקציות שמשתמשות ב-WebView, מופיע גם קטע שמיועד לכל אחת מהאפליקציות האלה. בדוגמה הזו יש רק כרטיסייה אחת פתוחה.

  4. לוחצים על בדיקה לצד כתובת ה-URL שפתחתם עכשיו. תיפתח מכונה חדשה של כלי פיתוח.

מופע חדש של כלי פיתוח לכרטיסייה מרוחקת.

גרסת Chrome שפועלת במכשיר ה-Android קובעת את הגרסה של כלי הפיתוח שתיפתח במחשב הפיתוח. לכן, אם במכשיר Android פועלת גרסה ישנה מאוד של Chrome, יכול להיות שהמופע של כלי הפיתוח יהיה שונה ממה שאתם רגילים אליו.

פעולות נוספות: השהיה, מיקוד, טעינה מחדש או סגירה של כרטיסייה

מתחת לכתובת ה-URL מופיע תפריט שבעזרתו אפשר להשהות, להתמקד, לטעון מחדש או לסגור כרטיסייה.

התפריט להשהיה, לטעינה מחדש, למיקוד או לסגירה של כרטיסייה.

בדיקת רכיבים

עוברים לחלונית Elements במכונה של כלי הפיתוח, ומעבירים את העכבר מעל רכיב כדי להדגיש אותו באזור התצוגה של מכשיר Android.

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

הקלטת המסך של מכשיר Android אל מכונת הפיתוח

לוחצים על Toggle Screencast החלפת מצב של הקלטת המסך כדי לצפות בתוכן של מכשיר Android במכונה של כלי הפיתוח.

תוכלו לבצע פעולות בהקלטת המסך בכמה דרכים:

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

כמה הערות לגבי הקלטות מסך:

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

ניפוי באגים באופן ידני דרך Android Debug Bridge (adb)

במקרים נדירים, שיטה חלופית לניפוי באגים מרחוק עשויה להיות שימושית. לדוגמה, תוכלו להתחבר ישירות אל פרוטוקול Chrome DevTools (CDP) של Chrome ב-Android.

כדי לעשות זאת, אפשר להשתמש ב-Android Debug Bridge (adb):

  1. חשוב לוודא שהפעלתם אפשרויות למפתחים ואת ניפוי באגים ב-USB במכשיר Android.
  2. פותחים את Chrome במכשיר Android.
  3. מחברים את מכשיר Android למכונת הפיתוח באמצעות:

  4. בשורת הפקודה של מחשב הפיתוח, מריצים את הפקודה adb devices -l ובודקים אם המכשיר מופיע ברשימה.

  5. מעבירים את שקע ה-CDP במכשיר ליציאה המקומית של המחשב, לדוגמה 9222. כדי לעשות זאת, מריצים את:

    adb forward tcp:9222 localabstract:chrome_devtools_remote
    
  6. לאחר החיבור, חשוב לראות את הפרטים הבאים:

    • http://localhost:9222/json מפרטת את page היעדים.
    • http://localhost:9222/json/version חושף את נקודת הקצה (endpoint) של היעד browser, כפי שמצוין במסמכי התיעוד של CDP.
    • השדה chrome://inspect/#devices מאוכלס, גם אם ההגדרה Discover של התקני USB לא מסומנת.

דרכים לפתרון בעיות: