راهاندازی فعالیتهای وب قابل اعتماد میتواند چالشبرانگیز باشد، بهخصوص اگر فقط بخواهید وبسایت خود را نمایش دهید. این راهنما به شما آموزش میدهد که چگونه یک پروژه کوچک ایجاد کنید که از فعالیتهای وب قابل اعتماد استفاده میکند.
در پایان این راهنما، شما:
- از Bubblewrap برای ساخت برنامهای استفاده کردهام که از یک فعالیت وب قابل اعتماد استفاده میکند و تأیید را با موفقیت پشت سر میگذارد.
- بفهمید چه زمانی از کلیدهای امضای شما استفاده میشود.
- بتوانید امضایی را که برنامه اندروید شما با آن ساخته میشود، تعیین کنید.
- بدانید که چگونه یک فایل پیوندهای دارایی دیجیتال اولیه ایجاد کنید.
برای دنبال کردن این راهنما، شما نیاز دارید:
- Node.js نسخه ۱۰ یا بالاتر.
- یک گوشی یا شبیهساز اندروید، متصل و آماده برای توسعه. اگر از گوشی فیزیکی استفاده میکنید، اشکالزدایی USB را فعال کنید .
- یک مرورگر موبایل که از فعالیت وب قابل اعتماد پشتیبانی میکند.
- وبسایتی که میخواهید در «فعالیت وب مورد اعتماد» مشاهده کنید.
شما میتوانید از یک فعالیت وب مورد اعتماد برای برنامه اندروید خود استفاده کنید تا یک تب مرورگر تمام صفحه را بدون هیچ رابط کاربری مرورگری باز کنید. این قابلیت محدود به وبسایتهایی است که شما مالک آنها هستید. شما با تنظیم پیوندهای دارایی دیجیتال ، مالکیت خود را اثبات میکنید.
وقتی یک فعالیت وب قابل اعتماد (Trusted Web Activity) را اجرا میکنید، مرورگر پیوندهای دارایی دیجیتال (Digital Asset Links) را تأیید میکند. اگر تأیید ناموفق باشد، مرورگر به نمایش وبسایت شما به عنوان یک برگه سفارشی (Custom Tab) برمیگردد.
نصب و پیکربندی Bubblewrap
Bubblewrap مجموعهای از کتابخانهها و یک ابزار خط فرمان (CLI) برای Node.js است که به توسعهدهندگان کمک میکند تا با استفاده از Trusted Web Activity، برنامههای وب پیشرونده را درون برنامههای اندروید تولید، ساخته و اجرا کنند.
با اجرای این دستور، CLI را نصب کنید:
npm i -g @bubblewrap/cli
راهاندازی محیط
هنگام اجرای Bubblewrap برای اولین بار، پیشنهاد میدهد که وابستگیهای خارجی مورد نیاز را به طور خودکار دانلود و نصب کند. توصیه میکنیم دانلودهای خودکار را فعال کنید، زیرا به اطمینان از پیکربندی صحیح وابستگیها کمک میکند. برای استفاده از کیت توسعه جاوا (JDK) یا نصب ابزارهای خط فرمان اندروید، مستندات Bubblewrap را بررسی کنید.
مقداردهی اولیه و ساخت پروژه
یک پروژه اندروید که یک PWA را در بر میگیرد، مقداردهی اولیه کنید:
bubblewrap init --manifest=https://my-twa.com/manifest.json
Bubblewrap مانیفست وب را میخواند، از توسعهدهندگان میخواهد مقادیری را که قرار است در پروژه اندروید استفاده شوند، تأیید کنند و پروژه را با استفاده از آن مقادیر تولید میکند.
پس از ایجاد پروژه، با اجرای دستور زیر یک APK ایجاد کنید:
bubblewrap build
اجرا کنید
مرحله ساخت، فایلی به نام app-release-signed.apk را تولید میکند. این فایل را میتوان برای آزمایش روی یک دستگاه در حال توسعه نصب کرد یا برای انتشار در فروشگاه Play آپلود کرد.
Bubblewrap دستوری برای نصب و آزمایش برنامه روی یک دستگاه محلی ارائه میدهد. با اتصال دستگاه توسعه به رایانه، دستور زیر را اجرا کنید:
bubblewrap install
به عنوان یک روش جایگزین، میتوان از ابزار adb استفاده کرد.
adb install app-release-signed.apk
اکنون برنامه باید در لانچر دستگاه در دسترس باشد.
هنگام باز کردن برنامه، متوجه خواهید شد که وبسایت شما به عنوان یک برگه سفارشی (Custom Tab) باز میشود، نه یک فعالیت وب قابل اعتماد (Trusted Web Activity). دلیل این امر این است که ما هنوز اعتبارسنجی پیوندهای دارایی دیجیتال (Digital Asset Links) خود را تنظیم نکردهایم.
جایگزینهای رابط کاربری گرافیکی (GUI) برای Bubblewrap
PWA Builder یک رابط کاربری گرافیکی ارائه میدهد که از کتابخانه Bubblewrap برای تولید پروژههای Trusted Web Activity استفاده میکند. دستورالعملهایی در مورد نحوه استفاده از PWA Builder برای ایجاد یک برنامه اندروید که PWA شما را باز میکند، بیابید.
کلیدهای امضا
پیوندهای دارایی دیجیتال، کلیدی را که یک APK با آن امضا شده است، در نظر میگیرند و یکی از دلایل رایج عدم موفقیت در تأیید، استفاده از امضای اشتباه است. (به یاد داشته باشید، عدم موفقیت در تأیید به این معنی است که وبسایت خود را به عنوان یک برگه سفارشی با رابط کاربری مرورگر در بالای صفحه راهاندازی خواهید کرد.) هنگامی که Bubblewrap برنامه را میسازد، یک APK با تنظیمات کلید در مرحله init ایجاد میشود. با این حال، هنگامی که برنامه خود را در Google Play منتشر میکنید، بسته به نحوه انتخاب شما برای مدیریت کلیدهای امضا، ممکن است کلید دیگری برای شما ایجاد شود. درباره کلیدهای امضا و نحوه ارتباط آنها با Bubblewrap و Google Play بیشتر بدانید.
تنظیم فایل پیوند دارایی شما
پیوندهای دارایی دیجیتال اساساً از یک فایل در وبسایت شما تشکیل شدهاند که به برنامه شما و برخی فرادادهها در برنامه شما اشاره میکنند که به وبسایت شما اشاره دارند.
پس از ایجاد فایل assetlinks.json ، آن را در وبسایت خود با آدرس .well-known/assetlinks.json (نسبت به ریشه) آپلود کنید تا برنامه شما به درستی توسط مرورگر تأیید شود. برای اطلاعات بیشتر در مورد نحوه ارتباط آن با کلید امضای خود ، به بخش Digital Asset Links مراجعه کنید.
بررسی مرورگر شما
یک فعالیت وب قابل اعتماد (Trusted Web Activity) سعی میکند به مرورگر پیشفرض کاربر پایبند باشد. اگر مرورگر پیشفرض کاربر از فعالیتهای وب قابل اعتماد (Trusted Web Activities) پشتیبانی کند، اجرا خواهد شد. در غیر این صورت، اگر مرورگر نصبشده دیگری از فعالیتهای وب قابل اعتماد پشتیبانی کند، انتخاب خواهد شد. در نهایت، رفتار پیشفرض، بازگشت به حالت تبهای سفارشی (Custom Tabs) است.
این یعنی اگر در حال اشکالزدایی چیزی در رابطه با فعالیتهای وب قابل اعتماد هستید، باید مطمئن شوید که از مرورگری که فکر میکنید استفاده میکنید. میتوانید از دستور زیر برای بررسی مرورگر مورد استفاده استفاده کنید:
> adb logcat -v brief | grep -e TWAProviderPicker
D/TWAProviderPicker(17168): Found TWA provider, finishing search: com.google.android.apps.chrome
مراحل بعدی
امیدوارم اگر این راهنما را دنبال کردهاید، یک فعالیت وب قابل اعتماد (Trusted Web Activity) کارآمد و دانش کافی برای اشکالزدایی در صورت عدم موفقیت تأیید داشته باشید. در غیر این صورت، نگاهی به مفاهیم بیشتر اندروید برای توسعهدهندگان وب بیندازید.
برای مراحل بعدی، یک آیکون برای برنامه خود ایجاد کنید . پس از اتمام این کار، میتوانید انتشار برنامه خود را در فروشگاه Play در نظر بگیرید.