دليل البدء السريع

Peter Conn
Peter Conn

قد يكون إعداد أنشطة الويب الموثوق بها صعبًا بعض الشيء، خاصةً إذا كان كل ما تريد فعله هو عرض موقعك الإلكتروني. سيأخذك هذا الدليل في جولة خلال إنشاء مشروع أساسي يستخدم أنشطة الويب الموثوق بها، ويتناول جميع الصعوبات.

بنهاية هذا الدليل، ستكون قادرًا على:

  • استخدمت Bubblewrap لإنشاء تطبيق يستخدم نشاط ويب موثوقًا به ويجتاز عملية التحقق.
  • التعرّف على وقت استخدام مفاتيح التوقيع
  • يمكنك تحديد التوقيع الذي يتم إنشاء تطبيق Android به.
  • تعرّف على كيفية إنشاء ملف روابط مواد العرض الرقمية الأساسي.

لاتّباع هذا الدليل، ستحتاج إلى ما يلي:

  • تم تثبيت Node.js الإصدار 10 أو الإصدار الأحدث على جهاز كمبيوتر التطوير.
  • هاتف Android أو محاكي تم توصيله وإعداده للتطوير (تفعيل تصحيح أخطاء USB إذا كنت تستخدم هاتفًا فعليًا).
  • متصفّح متوافق مع "نشاط الويب الموثوق به" على هاتف التطوير. سيعمل الإصدار 72 من Chrome أو الإصدارات الأحدث. سيتم توفير الدعم في متصفّحات أخرى قريبًا.
  • موقع إلكتروني تريد عرضه في نشاط الويب الموثوق به.

يتيح نشاط الويب الموثوق به لتطبيق Android تشغيل علامة تبويب في المتصفح بملء الشاشة بدون أي واجهة مستخدم في المتصفح. تقتصر هذه الإمكانية على المواقع الإلكترونية التي تملكها، ويمكنك إثبات ذلك من خلال إعداد "روابط التنقل إلى مواد العرض الرقمية". سنتحدث أكثر عنها لاحقًا.

عند إطلاق نشاط موثوق به على الويب، سيتحقق المتصفّح من إتمام عملية الدفع من خلال روابط تنقل إلى مواد العرض الرقمية، وهذا ما يُعرف باسم التحقّق. وفي حال تعذّر إثبات الملكية، سيعود المتصفح إلى عرض موقعك الإلكتروني كعلامة تبويب مخصّصة.

تثبيت Bubblewrap وإعداده

فقاعة الالتفاف هي مجموعة من المكتبات وأداة سطر الأوامر (CLI) لخدمة Node.js، لمساعدة المطوّرين على إنشاء تطبيقات ويب تقدّمية وإنشاؤها وتشغيلها داخل تطبيقات Android باستخدام نشاط موثوق به على الويب.

يمكن تثبيت واجهة سطر الأوامر باستخدام الأمر التالي:

npm i -g @bubblewrap/cli

إعداد البيئة

عند تشغيل Bubblewrap لأول مرة، سيقترح عليك تنزيل التبعيات الخارجية المطلوبة وتثبيتها تلقائيًا. ننصح بالسماح للأداة بالقيام بذلك، لأنها تضمن ضبط التبعيات بشكل صحيح. راجِع وثائق Bubblewrap لاستخدام أداة تثبيت Java Development Kit (JDK) أو أدوات سطر أوامر Android حالية.

تهيئة وبناء المشروع

يتم إعداد مشروع Android يشمل تطبيق ويب تقدّمي (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 واجهة واجهة مستخدم تصويرية تستخدم مكتبة فقاعة المحادثة بهدف تطوير مشاريع أنشطة موثوق بها على الويب. يمكنك الاطّلاع في مشاركة المدونة هذه على مزيد من التعليمات حول كيفية استخدام PWA Builder لإنشاء تطبيق Android يفتح تطبيق الويب التقدّمي PWA.

ملاحظة حول توقيع المفاتيح

تأخذ "روابط مواد العرض الرقمية" في الاعتبار المفتاح الذي تم توقيعه على حزمة APK، والسبب الشائع لتعذُّر إثبات الملكية هو استخدام توقيع غير صحيح. (تذكّر أنّ تعذّر إثبات ملكية موقعك الإلكتروني يعني أنّك ستفتح موقعك الإلكتروني في علامة تبويب مخصّصة مع عرض واجهة المستخدم الخاصة بالمتصفح في أعلى الصفحة). عندما ينشئ تطبيق Bubblewrap التطبيق، سيتم إنشاء ملف APK يتضمن إعداد مفتاح خلال خطوة init. ومع ذلك، عند نشر تطبيقك في Google Play، قد يتم إنشاء مفتاح آخر لك بناءً على الطريقة التي تختارها للتعامل مع مفاتيح التوقيع. تعرَّف على مزيد من المعلومات حول مفاتيح التوقيع وعلاقتها بأداة Bubble وGoogle Play.

تتكوّن "روابط مواد العرض الرقمية" بشكل أساسي من ملف على موقعك الإلكتروني يشير إلى تطبيقك وبعض البيانات الوصفية في تطبيقك التي تشير إلى موقعك الإلكتروني.

بعد إنشاء ملف assetlinks.json، يجب تحميله إلى موقعك الإلكتروني على .well-known/assetlinks.json بالنسبة إلى الجذر) كي يتمكّن المتصفّح من التحقّق من تطبيقك بشكل صحيح. يمكنك الاطّلاع على معلومات تفصيلية عن ميزة "روابط التنقل إلى مواد العرض الرقمية" للحصول على مزيد من المعلومات عن مدى ارتباطها بمفتاح التوقيع.

جارٍ التحقّق من إعدادات المتصفّح

سيحاول "النشاط على الويب الموثوق به" الالتزام بخيار المتصفح التلقائي للمستخدم. إذا كان المتصفح الافتراضي للمستخدم يتيح استخدام أنشطة الويب الموثوق بها، سيتم تشغيله. في حال عدم تفعيل هذا الخيار، سيتم اختيار أي متصفّح مثبَّت يتيح استخدام أنشطة الويب الموثوق بها. أخيرًا، يكون السلوك الافتراضي هو الرجوع إلى وضع "علامات التبويب المخصصة".

وهذا يعني أنه إذا كنت تصحح الأخطاء بشأن شيء يتعلق بأنشطة الويب الموثوق بها، فيجب عليك التأكد من أنك تستخدم المتصفح الذي تعتقد أنك تستخدمه. يمكنك استخدام الأمر التالي للتحقق من المتصفِّح الذي يتم استخدامه:

> adb logcat -v brief | grep -e TWAProviderPicker
D/TWAProviderPicker(17168): Found TWA provider, finishing search: com.google.android.apps.chrome

الخطوات التالية

وإذا كنت قد اتبعت هذا الدليل، فربما يكون لديك نشاط موثوق به على الويب وأن يكون لديك معلومات كافية لتصحيح الأخطاء تحدث عند تعذُّر إثبات الملكية. وإذا لم يكن الأمر كذلك، يمكنك إلقاء نظرة على المزيد من مفاهيم Android للمطوّرين على الويب أو الإبلاغ عن مشكلة في GitHub استنادًا إلى هذه المستندات.

بالنسبة إلى الخطوات التالية، أنصحك بالبدء من خلال إنشاء رمز لتطبيقك. بعد ذلك، يمكنك نشر تطبيقك في "متجر Play".