ניפוי באגים ברכיבי WebView באפליקציות Android המקוריות באמצעות הכלים למפתחים ב-Chrome.
ב-Android 4.4 (KitKat) ואילך, השתמשו ב-DevTools כדי לנפות באגים בתוכן WebView באפליקציות Android מקוריות.
סיכום
- מפעילים ניפוי באגים ב-WebView באפליקציה המקורית ל-Android וניפוי באגים ברכיבי WebView בכלי הפיתוח ל-Chrome.
- ניתן לגשת לרשימת רכיבי WebView התומכים בניפוי באגים דרך chrome://inspect.
- ניפוי באגים ברכיבי WebView זהה לניפוי באגים בדף אינטרנט באמצעות ניפוי באגים מרחוק.
הגדרת WebViews לניפוי באגים
יש להפעיל ניפוי באגים ב-WebView מתוך האפליקציה. כדי להפעיל ניפוי באגים ב-WebView, קוראים לשיטה הסטטית setWebContentsDebuggingEnabled במחלקה WebView.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WebView.setWebContentsDebuggingEnabled(true);
}
ההגדרה הזו חלה על כל רכיבי ה-WebView של האפליקציה.
טיפ: ניפוי באגים ב-WebView לא מושפע מהמצב של הדגל debuggable
במניפסט של האפליקציה. אם רוצים להפעיל ניפוי באגים ב-WebView רק כאשר הערך של debuggable
הוא true
, צריך לבדוק את הסימון בזמן ריצה.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE))
{ WebView.setWebContentsDebuggingEnabled(true); }
}
פתיחת WebView בכלי פיתוח
בדף chrome://inspect מוצגת רשימה של רכיבי WebView שתומכים בניפוי באגים במכשיר שלכם.
כדי להתחיל בניפוי באגים, לוחצים על inspect מתחת ל-WebView שרוצים לנפות בו באגים. השתמשו בכלי הפיתוח כמו שעושים בכל כרטיסייה בדפדפן מרוחק.
הגרפיקה האפורה שמופיעה ב-WebView מייצגת את הגודל ואת המיקום שלו ביחס למסך המכשיר. אם לרכיבי ה-WebView מוגדרות כותרות, גם הכותרות מופיעות ברשימה.
פתרון בעיות
לא רואים את רכיבי ה-WebView בדף chrome://inspect?
- מוודאים שניפוי באגים ב-WebView מופעל באפליקציה.
- במכשיר, פותחים את האפליקציה עם ה-WebView שרוצים לנפות בו באגים. לאחר מכן מרעננים את הדף chrome://inspect.