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