اشکال‌زدایی با استفاده از برنامه WebView DevTools

برنامه WebView DevTools یک ابزار روی دستگاه برای مدیریت و اشکال‌زدایی خودِ مؤلفه WebView سیستم است. این برنامه جدا از Chrome DevTools است که روی دستگاه توسعه شما اجرا می‌شود و به شما امکان می‌دهد محتوای وب زنده (HTML، CSS و JavaScript) را که در یک نمونه از WebView اجرا می‌شود، از راه دور اشکال‌زدایی کنید.

WebView DevTools یک برنامه همراه است که به طور خودکار به همراه کامپوننت سیستم WebView روی دستگاه شما نصب می‌شود. این برنامه به چهار بخش تقسیم می‌شود:

  • خانه : اطلاعات نسخه را مشاهده کنید و WebView پیش‌فرض را به نسخه کانال پیش‌انتشار تغییر دهید.
  • خرابی‌ها : گزارش‌های خرابی WebView را فهرست و بارگذاری کنید.
  • پرچم‌ها : پرچم‌های توسعه‌دهنده را برای تغییر رفتار WebView تنظیم کنید.
  • گزارش‌های شبکه : گزارش‌های شبکه سطح پایین WebView را فهرست کرده و به اشتراک بگذارید.

اجرای WebView DevTools

در دستگاه‌هایی با اندروید ۱۶ یا بالاتر که حالت توسعه‌دهنده (Developer Mode) در آن‌ها فعال است، می‌توانید WebView DevTools را با رفتن به تنظیمات > سیستم > گزینه‌های توسعه‌دهندگان > WebView DevTools اجرا کنید.

در تمام نسخه‌های اخیر اندروید، می‌توانید WebView DevTools را با استفاده از دستور adb اجرا کنید:

adb shell am start -a "com.android.webview.SHOW_DEV_UI"

از طرف دیگر، اگر یک کانال پیش‌اجاره WebView مانند Beta ، Dev یا Canary نصب کنید، می‌توانید از آیکون لانچر WebView DevTools استفاده کنید.

آیکون لانچر WebView DevTools.
شکل ۱. آیکون WebView DevTools برای برنامه نصب شده روی دستگاه.

اولین باری که WebView DevTools را اجرا می‌کنید، برای نمایش یک اعلان مداوم که فهرستی از پرچم‌های توسعه‌دهنده‌ای که فعال کرده‌اید را نشان می‌دهد، درخواست مجوز اعلان می‌کند.

به کانال پیش از انتشار بروید

جدیدترین ویژگی‌های WebView و رفع اشکالات ابتدا در کانال‌های پیش‌انتشار در دسترس قرار می‌گیرند. می‌توانید برنامه خود را با تغییر ارائه‌دهنده WebView دستگاه خود با استفاده از WebView DevTools در برابر این تغییرات آزمایش کنید. آزمایش در کانال‌های پیش‌انتشار به شما کمک می‌کند تا مطمئن شوید که برنامه شما با نسخه‌های بعدی WebView قبل از انتشار برای کاربران سازگار است.

  1. بسته به ترجیح خود بین پایداری و دسترسی به آخرین تغییرات، نسخه بتا ، توسعه‌دهندگان یا Canary وب‌ویو را نصب کنید.
  2. برنامه WebView DevTools را باز کنید و روی Change Provider ضربه بزنید.
  3. اگر این گزینه را نمی‌بینید، روی سه نقطه در گوشه بالا سمت راست ضربه بزنید و گزینه Change WebView Provider را انتخاب کنید.

برای اطلاعات بیشتر، به «آزمایش WebView Beta»، «Dev» یا «Canary» مراجعه کنید.

کانال‌های وب ویو

کانال‌های WebView بر اساس کانال‌های انتشار Chrome هستند. هر کانال نشان‌دهنده‌ی سطح متفاوتی از پایداری و تازگی کد است. در اینجا خلاصه‌ای از زمان استفاده از هر کانال WebView آورده شده است:

  • Canary : روزانه به‌روزرسانی می‌شود. این کانال جدیدترین تغییرات، شامل ویژگی‌های جدید و رفع اشکالات را به محض ادغام در پایگاه کد Chromium، ارائه می‌دهد. اگر می‌خواهید نحوه اجرای برنامه وب خود را در یک WebView با تغییر اخیراً ادغام‌شده آزمایش کنید، از این کانال استفاده کنید، اما توجه داشته باشید که این کانال می‌تواند ناپایدار باشد یا حاوی اشکالات باشد.

  • توسعه‌دهندگان : هفته‌ای یک یا دو بار به‌روزرسانی می‌شود. این کانال از Canary پایدارتر است اما همچنان شامل تغییرات پیشرفته‌ای است. این کانال برای توسعه‌دهندگانی که می‌خواهند ویژگی‌های جدید را آزمایش کنند، اما با ریسک کمتر اشکالات نامربوط نسبت به Canary، بهترین گزینه است.

  • نسخه بتا : تقریباً هر هفته به‌روزرسانی می‌شود و هر ۴ هفته یک به‌روزرسانی اصلی دارد. این کانال، پیش‌نمایشی از ویژگی‌های نسخه پایدار بعدی WebView را حدود ۴ تا ۶ هفته قبل از انتشار نسخه پایدار به شما ارائه می‌دهد. از این کانال برای آزمایش برنامه وب خود در برابر نسخه آینده WebView و تأیید سازگاری استفاده کنید.

  • پایدار : برای نسخه‌های اصلی هر ۴ هفته یکبار به‌روزرسانی می‌شود و برای رفع اشکالات فوری، هر ۲-۳ هفته یکبار نسخه‌های جزئی منتشر می‌شود. این کانال تولید WebView است که برای همه کاربران ارائه شده است. این کانال، پایدارترین کانال است و در کانال‌های دیگر آزمایش شده است. اگر می‌خواهید برنامه وب خود را در WebView به روشی که اکثر کاربران در حال حاضر انجام می‌دهند، تجربه کنید، از این کانال استفاده کنید، شاید برای بازتولید اشکالی که گزارش کرده‌اند.

رابط کاربری از کار افتاده

اگر هنگام توسعه برنامه خود با خرابی‌های WebView مواجه شدید، می‌توانید با استفاده از WebView DevTools گزارش‌های اشکال مربوط به آنها را فهرست، آپلود و ثبت کنید.

  1. پس از اینکه برنامه شما از کار افتاد، آن را مجدداً راه‌اندازی کنید تا مطمئن شوید که گزارش خرابی ایجاد می‌شود.
  2. برنامه WebView DevTools را باز کنید و روی Crashes ضربه بزنید.

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

رابط کاربری را علامت بزنید

برنامه WebView DevTools به شما امکان می‌دهد چندین پرچم مفید را برای تغییر رفتار همه WebViewها در دستگاه خود تنظیم کنید. اکثر پرچم‌ها فقط برای توسعه خود WebView استفاده می‌شوند، اما تعداد کمی از آنها برای توسعه‌دهندگان برنامه‌های اندروید مفید هستند.

  • highlight-all-webviews : با اضافه کردن یک رنگ زرد به بالای WebViewها، آنها را شناسایی کنید.
  • net-log : ثبت وقایع سطح پایین از فعالیت شبکه WebView را فعال می‌کند.
  • webview-log-js-console-messages : کاری می‌کند که گزارش‌های کنسول جاوااسکریپت در Logcat نمایش داده شوند.
برنامه WebView DevTools رابط کاربری Flags را نشان می‌دهد.
شکل ۲. رابط کاربری Flags در برنامه WebView DevTools.

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

سیاهههای مربوط به شبکه

اگر نمی‌توانید مشکلات اتصال به سرور را در WebView با استفاده از Chrome DevTools حل کنید، از WebView DevTools برای ثبت گزارش‌های سطح پایین شبکه استفاده کنید.

  1. اشکال‌زدایی WebView را در کد برنامه خود فعال کنید .
  2. در WebView DevTools، Flags را باز کنید، net-log را پیدا کنید و آن را فعال کنید. برنامه خود را مجدداً راه‌اندازی کنید تا پرچم اعمال شود.
  3. اقداماتی را انجام دهید که رفتار شبکه‌ای را که می‌خواهید اشکال‌زدایی کنید، فعال کند. پس از ایجاد مجدد مشکل، برنامه خود را ببندید.
  4. برای یافتن و اشتراک‌گذاری فایل گزارش شبکه، بخش Net Logs از WebView DevTools را باز کنید.
  5. شما می‌توانید فایل لاگ JSON را در Netlog Viewer ، ابزاری آنلاین برای مصورسازی لاگ‌های شبکه، بارگذاری کنید تا رویدادهای سطح پایین شبکه، اطلاعات سوکت و جزئیات زمان‌بندی را بررسی کنید.

برای اطلاعات بیشتر، به اشکال‌زدایی شبکه در WebView مراجعه کنید.