استفاده از محتوای وب در برنامه Android

Android به شما امکان می‌دهد از قدرت وب در برنامه‌هایتان استفاده کنید. بنابراین، می‌توانید از انعطاف‌پذیری و کارایی نمایش انواع خاصی از محتوا بهره‌مند شوید.

این کار به شما امکان می‌دهد محتوای وب موجود را به‌طور یکپارچه در برنامه Android خود ادغام کنید، مثلاً برای نمایش فید اخبار، نمایش آموزش‌های تعاملی، نمایش آگهی‌ها، یا حتی میزبانی یک بازی کوچک بدون ساختن همه‌چیز از ابتدا. آن را به‌عنوان پنجره‌ای به اینترنت از داخل برنامه‌تان درنظر بگیرید. دو روش برای جاسازی محتوای وب در برنامه وجود دارد:

  • WebView: محتوای وبی را که کنترل می‌کنید به‌صورت درون‌خطی نمایش می‌دهد، جایی که می‌خواهید انعطاف‌پذیری بالایی در سفارشی‌سازی یا به‌روزرسانی واسط کاربر داشته باشید.
  • Custom Tabs: تجربه کامل مرور درون‌برنامه‌ای با پشتیبانی مرورگر پیش‌فرض کاربر (پشتیبانی مرورگر را ببینید) برای زمانی که کاربران روی پیوندی کلیک می‌کنند و می‌خواهید آن‌ها را در برنامه نگه دارید، به‌جای اینکه به مرورگر خارجی بروند، با تجربه مرور بسیار آماده استفاده.
برنامه Android در Google Play باز است و نمای وب اصلی برجسته شده است. زبانه سفارشی بازشده در صفحه وب «Android برای توسعه‌دهندگان»، برجسته شده است.
شکل ۱. `WebView` (سمت چپ) و `Custom Tab` (سمت راست) مشخص شده‌اند.

چرا محتوای وب را جاسازی کنیم؟

جاسازی محتوای وب در برنامه مزایای متعددی دارد:

  • کارایی: از کد موجود در وب‌سایتتان مجدداً استفاده کنید. بر پایه فناوری‌ها و محتوای وب موجود ساخته شده است.
  • ادغام: استفاده از محتوای خارجی از ارائه‌دهندگان طرف سوم، مانند رسانه و آگهی، در برنامه شما.
  • انعطاف‌پذیری: محتوا را به‌صورت پویا به‌روز کنید بدون اینکه به واسط‌های کاربر ازپیش تعریف‌شده محدود شوید یا به‌روزرسانی‌های برنامه را منتشر کنید.

چه زمانی از محتوای وب استفاده کنیم؟

سه مورد استفاده اصلی برای استفاده از وب در برنامه Android شما وجود دارد:

۱. جاسازی محتوای وب در برنامه به‌عنوان محتوای اصلی یا پشتیبانی: از WebView استفاده کنید

  • محتوای وب خودتان را به‌صورت درون‌خطی به‌عنوان تجربه اصلی نمایش دهید، جایی که می‌خواهید در سفارشی‌سازی یا به‌روزرسانی واسط کاربر انعطاف‌پذیری بالایی داشته باشید.
  • محتوای دیگری مانند آگهی‌ها، شرایط و مقررات قانونی، یا سایر محتوای شخص ثالث را به‌صورت درون‌خطی یا به‌عنوان پنجره‌ای در تجربه برنامه‌تان نمایش دهید.
برنامه Android در Google Play باز است و نمای وب اصلی در کادر قرمز رنگی برجسته شده است برنامه Android با نوشتار پشتیبانی در چارگوش قرمز باز است.
شکل ۲. محتوای وب جاسازی‌شده در برنامه با `WebView`به‌عنوان محتوای اصلی (چپ) و پشتیبانی (راست).

۲. مرور درون‌برنامه بااستفاده از Custom Tabs، یا WebView برای موارد استفاده پیشرفته‌تر

  • تجربه مرور کامل درون‌برنامه‌ای برای زمانی که کاربران روی پیوندی کلیک می‌کنند و می‌خواهید آن‌ها را در برنامه نگه دارید، به‌جای اینکه به مرورگر خارجی بروند.
    • توجه: برای دستگاه‌های با صفحه‌نمایش بزرگ مانند رایانه‌های لوحی و دستگاه‌های تاشو، گزینه‌های بیشتری وجود دارد که به برنامه‌ها کمک می‌کند از فضای اضافی بهره ببرند:
    • برنامه‌ها می‌توانند پیوندهای وب را در صفحه دونیمه بااستفاده از راه‌اندازی تجربه چندپنجره‌ای مجاور باز کنند. این کار به کاربران امکان می‌دهد به‌طور هم‌زمان بین برنامه شما و مرورگر چندوظیفگی انجام دهند. یا
    • Custom Tabs گزینه پانل کناری دارد که می‌تواند در همان تکلیف باز شود، اما در کنار محتوای برنامه موجود شما.
  • ‫Custom Tab توسط مرورگر پیش‌فرض کاربر برای مرورگرهایی که از Custom Tabs پشتیبانی می‌کنند، ارائه می‌شود.
    • درحالی‌که امکان استفاده از WebView و ارائه تجربه مرور درون‌برنامه‌ای بسیار قابل‌سفارشی‌سازی وجود دارد، ما Custom Tabs را برای تجربه مرورگر آماده استفاده و انتقال یکپارچه زمانی که کاربر می‌خواهد پیوند وب را در مرورگر باز کند، توصیه می‌کنیم.
صفحه وب با پیوند درون‌برنامه در کادر قرمز در سمت راست، و مرورگر درون‌برنامه در سمت چپ نشان داده شده است.
شکل ۳. کلیک کردن روی پیوند درون‌برنامه (سمت راست) و باز کردن مرورگر درون‌برنامه (سمت چپ).

۳. جریان‌های ورود به سیستم یا اصالت‌سنجی در برنامه شما

رویکرد پیشنهادی Android این است که جریان‌های ورود به سیستم یا اصالت‌سنجی را بااستفاده از Credential Manager بسازید. اگر متوجه شدید که هنوز باید از «وب جاسازی‌شده» برای این تجربه‌ها استفاده کنید، از راهنمایی زیر استفاده کنید:

  • برخی‌از برنامه‌ها از WebView برای ارائه جریان‌های ورود به سیستم برای کاربرانشان استفاده می‌کنند، ازجمله استفاده از نام کاربری و گذرکلید (یا گذرواژه) مختص برنامه شما. این کار به توسعه‌دهندگان امکان می‌دهد جریان‌های اصالت‌سنجی را در پلاتفرم‌های مختلف یکپارچه کنند.
  • هنگام پیوند دادن به ارائه‌دهنده هویت طرف سوم یا تجربه ورود به سیستم، مثل «ورود به سیستم با…»، Custom Tabs بهترین گزینه است. راه‌اندازی Custom Tab با جدا نگه داشتن اطلاعات کاربری کاربر در سایت طرف سوم، به محافظت از آن کمک می‌کند.

برای اطلاعات بیشتر درباره استفاده از WebView برای اصالت‌سنجی، به اصالت‌سنجی کاربران با «وب‌نما» مراجعه کنید. برای راه‌اندازی Custom Tab، به نمای کلی «برگه‌های سفارشی Android» مراجعه کنید.

فیلد ورود به سیستم درون‌برنامه با WebView در سمت چپ. ورود به سیستم شخص ثالث با «برگه سفارشی» در سمت راست.
شکل ۴. فیلد ورود به سیستم درون‌برنامه (چپ) و ورود به سیستم شخص ثالث بازشده در `برگه سفارشی` (راست).