تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يتيح لك نظام التشغيل Android الاستفادة من إمكانات الويب داخل تطبيقك، ما يتيح لك الاستفادة من مرونة وكفاءة عرض أنواع معيّنة من المحتوى.
تضمين المحتوى باستخدام WebView
تتيح لك واجهة برمجة التطبيقات WebView الوصول إلى إمكانات متصفّح صغير
لعرض محتوى الويب داخل تطبيقك. يتيح لك ذلك تقديم تجارب مستندة إلى الويب
كجزء أساسي أو داعم داخل تطبيقك، كما هو موضّح في الشكل
1.
الشكل 1. محتوى الويب المضمّن في التطبيق باستخدام كائنات `WebView` كمحتوى أساسي (على اليمين) ومحتوى داعم (على اليسار)
إمكانيات "WebView"
يمكنك إجراء ما يلي باستخدام WebView في تطبيقك:
تضمين الويب: يتم دمج WebView في واجهة مستخدم التطبيق كأحد المكوّنات، مثل زر أو حقل نصي.
تحميل المحتوى: يمكن لـ WebView تحميل محتوى الويب من مصادر مختلفة:
عناوين URL عن بُعد: يمكنه استرجاع صفحات الويب وعرضها من الإنترنت، تمامًا مثل أي متصفّح عادي.
الملفات المحلية: يمكنه تحميل ملفات HTML وCSS وJavaScript المخزَّنة ضمن موارد التطبيق.
المحتوى الذي يتم إنشاؤه ديناميكيًا: يمكن للتطبيق إنشاء محتوى HTML ديناميكيًا
وتقديمه إلى WebView.
العرض: تستخدم WebView محرك المتصفح الخاص بها لتحليل وعرض HTML وCSS وJavaScript، ما يؤدي إلى عرض صفحة الويب الناتجة ضمن المساحة المخصّصة لها في واجهة مستخدم التطبيق.
تنفيذ JavaScript: يمكن لـ WebView تنفيذ رمز JavaScript ضمن سياق صفحة الويب التي تم تحميلها. يتيح ذلك تفاعلات وتعديلات ديناميكية ضمن WebView.
التفاعل مع تطبيقك: هنا تصبح ميزة WebView أكثر فعالية. تتيح هذه الواجهة التواصل في اتجاهين بين صفحة الويب والتطبيق.
JavaScript إلى رمز التطبيق: يمكن لرمز JavaScript الذي يتم تنفيذه في WebView استدعاء واجهات برمجة التطبيقات المضيفة للتطبيق، ما يتيح الوصول إلى ميزات الجهاز، مثل الكاميرا أو نظام تحديد المواقع العالمي (GPS) أو أدوات الاستشعار.
رمز التطبيق إلى JavaScript: يمكن للتطبيق أيضًا إدراج رمز JavaScript في WebView أو تعديل محتوى صفحة الويب أو الاستجابة للأحداث التي يتم تشغيلها بواسطة صفحة الويب.
أوجه الاختلاف بين WebView والمتصفّح
WebView هي مكوّن مخصّص للغاية يوفّر الوظيفة الأساسية
لنافذة على الويب. على عكس المتصفّح الذي يوفّر شريط تنقّل وعناصر أخرى في واجهة المستخدم للتنقّل على الويب بشكل أوسع، فإنّ التجربة الإجمالية WebView تتحدّد من خلال تصميم تطبيقك والغرض منه.
لفهم الاختلافات بين WebView والمتصفّحات العادية بشكل أفضل، اطّلِع على التوضيحات التالية:
واجهة المستخدم: يتم استخدام WebView لعرض محتوى الويب، ولا يتضمّن عنوانًا أو واجهة مستخدم مثل معظم المتصفّحات الشائعة الأخرى، مثل زر الصفحة الرئيسية أو شريط العناوين أو قائمة الإعدادات.
الميزات: تتضمّن العديد من المتصفحات ميزات مُضمَّنة لتحسين تجربة التصفّح، مثل الإشارات المرجعية أو الأذونات أو السجلّ.
التحديثات: بما أنّ Android WebView هو إحدى خدمات النظام على Android، يتم إرسال التحديثات ودمجها في التطبيقات تلقائيًا على أساس شهري.
تعتمد المتصفّحات على تحديثات التطبيقات المقابلة، ثم على المستخدمين النهائيين لتطبيق التحديث على أجهزتهم.
البدء
للحصول على معلومات حول كيفية استخدام WebView في تطبيقك، يُرجى الاطّلاع على المستند إنشاء تطبيقات ويب في WebView.
مراجع إضافية
لتطوير صفحات ويب للأجهزة التي تعمل بنظام التشغيل Android باستخدام عناصر WebView أو علامات التبويب المخصّصة، راجِع المستندات التالية:
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-09-05 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-09-05 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["Android lets you build on the power of the web within your app. So, you can\nbenefit from the flexibility and efficiency of displaying certain types of\ncontent.\n\nEmbedding content using `WebView`\n\nThe [`WebView`](/reference/android/webkit/WebView) API gives you access to the capabilities of a mini-browser\nfor displaying web content within your app. This lets you provide web-powered\nexperiences as a core or supporting part within your app, as seen in **Figure\n1**.\n**Figure 1.** Web content embedded within the app with \\`WebView\\` objects as primary (left) and supporting content (right).\n\nWhat `WebView` can do\n\nYou can do the following with `WebView` in your app:\n\n- **Embed web** : A `WebView` is integrated into an app's user interface as a\n component, much like a button or text field.\n\n- **Load content** : `WebView` can load web content from various sources:\n\n - Remote URLs: It can fetch and display web pages from the internet, just like a regular browser.\n - Local files: It can load HTML, CSS, and JavaScript files stored within the app's resources.\n - Dynamically generated content: The app can generate HTML content dynamically and provide it to the `WebView`.\n- **Render** : `WebView` uses its browser engine to parse and render the HTML,\n CSS, and JavaScript, displaying the resulting web page within its designated\n area in the app's UI.\n\n- **Execute JavaScript** : `WebView` can execute JavaScript code within the\n context of the loaded web page. This allows for dynamic interactions and\n updates within the `WebView`.\n\n- **Interact with your app** : This is where `WebView` gets more powerful. It\n enables bidirectional communication between the web page and the app.\n\n - **JavaScript to app code** : JavaScript code running in a `WebView` can call\n host APIs of the app, enabling access to device features like camera, GPS,\n or sensors.\n\n - **App code to JavaScript** : The app can also inject JavaScript code into a\n `WebView`, manipulate the web page's content, or respond to events triggered\n by the web page.\n\nHow `WebView` differs from a browser\n\nA `WebView` is a highly custom component that provides the core functionality of\na window into the web. Unlike a browser, which provides a navigation bar and\nother user interface elements to navigate the web more broadly, the overall\nexperience of a `WebView` is shaped by your app's design and purpose.\n\nTo better understand how `WebView` differs from standard browsers, see the\nfollowing explanations:\n\n**UI** : A `WebView` is used for displaying web content and doesn't have its own\nheader or UI like most other common browsers, for example, a home button,\naddress bar, or settings menu.\n\n**Features**: Many browsers have built-in features to augment the\nbrowsing experience, such as bookmarks, permissions, or history.\n\n**Updates** : Because Android `WebView` is a system service on Android, updates\nare pushed and integrated into the apps automatically on a monthly basis.\nBrowsers rely on their corresponding app updates and then for end users to apply\nthe update on their devices.\n\nGet started\n\nFor information on how to use `WebView` in your app, see the document\n[Build web apps in `WebView`](/guide/webapps/webview).\n\nAdditional resources\n\nTo develop web pages for Android-powered devices using `WebView` objects or\nCustom Tabs, see the following documents:\n\n- [Build web apps in `WebView`](/guide/webapps/webview)\n- [Manage `WebView` objects](/guide/webapps/managing-webview)\n- [Support different screens in web apps](/guide/webapps/targeting)\n- [Debug web apps](/guide/webapps/debugging)\n- [Best practices for web apps](/guide/webapps/best-practices)\n- [Opt-in to `WebView` Beta](https://play.google.com/apps/testing/com.google.android.webview)\n- [In-app browsing using embedded web](/develop/ui/views/layout/webapps/in-app-browsing-embedded-web)\n- [Overview of Android Custom Tabs](/develop/ui/views/layout/webapps/overview-of-android-custom-tabs)"]]