اشکال‌زدایی بااستفاده از Chrome DevTools

می‌توانید از DevTools تعبیه‌شده در مرورگر Chrome که درحال اجرا در ماشین توسعه نرم‌افزار شما است برای بازرسی و اشکال‌زدایی از راه دور «وب‌نماهای» درحال اجرا در برنامه‌تان استفاده کنید. برای راهنمای دقیق درباره اشکال‌زدایی از راه دور برای «وب‌نماها»، به اشکال‌زدایی از راه دور «وب‌نماها» مراجعه کنید.

برای کسب اطلاعات بیشتر درباره DevTools، به نمای کلی Chrome DevTools مراجعه کنید.

فعال کردن اتصال از Chrome DevTools

WebView برنامه‌تان به‌طور پیش‌فرض اتصال‌های Chrome DevTools را فعال نخواهد کرد. باید اشکال‌زدایی WebView را در کد برنامه‌تان فعال کنید.

  1. مطمئن شوید که برای اجرای برنامه‌تان در سخت‌افزار یا دستگاه مجازی آماده هستید.
  2. اشکال‌زدایی «وب‌نما» را در کد برنامه‌تان با فراخوانی setWebContentsDebuggingEnabled فعال کنید. این کار معمولاً در کلاس Activity یا Application که WebView در آن مقداردهی اولیه می‌شود انجام می‌شود.

توصیه می‌کنیم setWebContentsDebuggingEnabled را در یک بررسی شرطی قرار دهید تا اشکال‌زدایی فقط در نسخه‌های توسعه فعال شود، نه در نسخه تولید. این تنظیم برای همه WebViewها در برنامه‌تان اعمال می‌شود.

اشکال‌زدایی WebView تحت‌تأثیر وضعیت پرچم debuggable در مانیفست برنامه قرار نمی‌گیرد. اگر می‌خواهید اشکال‌زدایی WebView را فقط زمانی فعال کنید که پرچم debuggable روی true تنظیم شده باشد، این پرچم را در زمان اجرا همان‌طور که در مثال زیر نشان داده شده است آزمایش کنید:

کاتلین

if (applicationInfo.flags and ApplicationInfo.FLAG_DEBUGGABLE != 0) {
     WebView.setWebContentsDebuggingEnabled(true)
}

جاوا

if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE)) {
     WebView.setWebContentsDebuggingEnabled(true);
}

شروع اشکال‌زدایی «وب‌نما»

پس‌از فعال کردن اشکال‌زدایی «وب‌نما» در کد برنامه و زمانی که برنامه‌تان در دستگاه فیزیکی یا شبیه‌ساز Android درحال اجرا است، Chrome DevTools را به «وب‌نما» متصل کنید:

  1. Chrome را در ماشین توسعه نرم‌افزار باز کنید.
  2. به chrome://inspect بروید.
  3. در صفحه chrome://inspect، مطمئن شوید یافتن دستگاه‌های USB علامت زده شده باشد. دستگاهتان را در بخش هدف راه دور پیدا کنید.

    صفحه بازرسی Chrome DevTools که هدف‌های ازراه‌دور دردسترس برای اشکال‌زدایی را نشان می‌دهد
    شکل ۱. صفحه بازرسی Chrome DevTools که هدف‌های راه دور موجود برای اشکال‌زدایی را نشان می‌دهد.
  4. در زیر نام دستگاهتان، Chrome همه WebViewهای فعال‌شده برای اشکال‌زدایی را که در آن دستگاه اجرا می‌شوند فهرست می‌کند، که معمولاً با WebView در و به‌دنبال آن نام بسته برنامه مشخص می‌شوند. WebView موردنظرتان را برای اشکال‌زدایی پیدا کنید و روی پیوند بازرسی کلیک کنید.

نمونه DevTools جدیدی باز می‌شود که می‌توانید از آن برای بازرسی WebView خود استفاده کنید.

اگر محتوا را از سرور وب محلی در ماشین توسعه نرم‌افزارتان ارائه می‌دهید، برای آشنایی با نحوه اتصال به آن از دستگاه یا شبیه‌سازتان، به دسترسی به سرور توسعه نرم‌افزار محلی از WebView مراجعه کنید. برای عیب‌یابی، به اشکال‌زدایی از راه دور دستگاه‌های Android و اشکال‌زدایی از راه دور WebViews مراجعه کنید.