تصحيح أخطاء تطبيقات الويب

يمكنك تصحيح أخطاء JavaScript باستخدام واجهات برمجة تطبيقات JavaScript console وطريقة العرض. رسائل الإخراج في Logcat. إذا كنت على دراية بتصحيح أخطاء صفحات الويب باستخدام Firebug أو Web Inspector، من المحتمل أن تكون على دراية باستخدام console (مثل console.log()). يدعم إطار عمل WebKit في Android معظم لكي تتمكن من تلقّي السجلات من صفحتك على الويب عند تصحيح الأخطاء في WebView يصف هذا الموضوع كيفية استخدام واجهات برمجة التطبيقات لوحدة التحكم لتصحيح الأخطاء.

استخدام واجهات برمجة تطبيقات وحدة التحكّم في WebView

تتوفّر أيضًا واجهات برمجة التطبيقات لوحدة التحكّم عند تصحيح الأخطاء في "WebView". يجب تقديم WebChromeClient الذي ينفذ الـ onConsoleMessage() لتظهر رسائل وحدة التحكم في Logcat. بعد ذلك، طبِّق WebChromeClient إلى WebView باستخدام setWebChromeClient() لمزيد من المعلومات، يُرجى الاطّلاع على Webview. التوثيق.

يوضّح المثال التالي كيفية استخدام واجهات برمجة التطبيقات Console في WebView:

Kotlin

val myWebView: WebView = findViewById(R.id.webview)
myWebView.webChromeClient = object : WebChromeClient() {

    override fun onConsoleMessage(message: ConsoleMessage): Boolean {
        Log.d("MyApplication", "${message.message()} -- From line " +
              "${message.lineNumber()} of ${message.sourceId()}")
        return true
    }
}

Java

WebView myWebView = findViewById(R.id.webview);
myWebView.setWebChromeClient(new WebChromeClient() {
    @Override
    public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
        Log.d("MyApplication", consoleMessage.message() + " -- From line " +
        consoleMessage.lineNumber() + " of " + consoleMessage.sourceId());
        return true;
    }
});

تتضمّن ConsoleMessage أيضًا كائن MessageLevel للإشارة إلى نوع رسالة وحدة التحكم التي يتم تسليمها. يمكنك الاستعلام عن مستوى الرسالة مع messageLevel() إلى لتحديد خطورة الرسالة، ثم استخدم خيارات Log أو اتّخاذ إجراءات مناسبة أخرى.

سواء كنت تستخدم onConsoleMessage(String, int, String) أو onConsoleMessage(ConsoleMessage), عند تنفيذ طريقة وحدة تحكم في صفحة الويب، يستدعي Android المناسب onConsoleMessage() حتى تتمكن من الإبلاغ عن الخطأ. على سبيل المثال، باستخدام مثال التعليمة البرمجية أعلاه، تمت طباعة رسالة Logcat التي تبدو كما يلي:

Hello World -- From line 82 of http://www.example.com/hello.html

في ما يلي مراجع إضافية ذات صلة بتصحيح الأخطاء:

اختبار ميزات الويب التجريبية

وعلى غرار صفحة chrome://flags في Google Chrome، يمكنك أيضًا اختبار ميزة تجريبية ميزات الويب في WebView.

لإجراء ذلك، يُرجى اتّباع الخطوات التالية:

  1. تثبيت أحد إصدارات WebView التجريبية القنوات (إصدار تجريبي أو إصدار مطوّري البرامج أو إصدار Canary){: .external}.

  2. تبديل WebView قناة على جهاز الاختبار بقناة الإصدار التجريبي المثبَّتة.

  3. انقر على مشغّل أدوات مطوري البرامج في WebView:


    الشكل 1. رمز أدوات مطوّري البرامج في WebView لتطبيق مثبَّت على الخاص بك.

  4. من "أدوات مطوري البرامج"، انقر على الإبلاغ عن وابحث عن أي ميزات تجريبية. التي تريد تفعيلها أو إيقافها. ينطبق التغيير على جميع الأجهزة الافتراضية البالغ عددها WebView على الجهاز.

  5. أوقِف تطبيقك ثم أعِد تشغيله لبدء إجراء الاختبارات باستخدام الميزات الجديدة.

لمزيد من المعلومات حول التبديل بين العلامات، يُرجى الاطّلاع على أدوات مطوري البرامج في "WebView" المستندات.