لمحة عن مجموعة حزمات تطبيق Android
ما هي "مجموعة حزمات تطبيق Android"؟
تم إطلاق "مجموعة حزمات تطبيق Android" (AAB) في عام 2018، وهي تنسيق نشر لتطبيقات Android متوافق مع Google Play ومتاجر التطبيقات الأخرى وأدوات الإنشاء، مثل Android Studio وBazel وBuck وCocos Creator وGradle وUnity وUnreal.
ما الفرق بين حِزم AAB وحِزم APK؟
حِزم التطبيقات مخصّصة للنشر فقط ولا يمكن تثبيتها على أجهزة Android. حزمة Android (APK) هي تنسيق قابل للتثبيت والتنفيذ للتطبيقات على نظام Android. يجب أن يعالج الموزّع حِزم التطبيقات إلى حِزم APK حتى يمكن تثبيتها على الأجهزة.
هل تنسيق حِزم APK المُعدّة للأجهزة الجوّالة هو تنسيق خاص لا يمكن استخدامه إلا على Google Play؟
لا، واجهة AAB ليست حصرية. حِزمة التطبيق مفتوحة المصدر، لذا يمكن لأي متجر تطبيقات استخدامها. تتوفّر الحِزم على Google Play وبعض متاجر التطبيقات الأخرى.
هل يمنعني إنشاء حِزم APK للأجهزة المزوّدة بنظام التشغيل Android من نشر تطبيقي في متاجر تطبيقات أخرى؟
لا، لا يتم منعك من نشر تطبيقك على متاجر تطبيقات أخرى. عند إنشاء تطبيقك، يمكنك إنشاء حِزم AAB وحِزم APK في الوقت نفسه استنادًا إلى تنسيق النشر المطلوب لكل متجر تطبيقات.
ما مقدار العمل المطلوب لاستخدام حِزمة تطبيق مُعدّة للنشر على جميع الأجهزة؟
بالنسبة إلى معظم التطبيقات، يتطلب إنشاء حِزم AAB جهدًا مماثلاً لإنشاء حِزم APK، لأنّه لا يتطلّب سوى اختيار حِزم AAB بدلاً من حِزم APK في وقت الإنشاء. بالنسبة إلى بعض التطبيقات، قد تكون هناك بعض التغييرات اللازمة للاستفادة من المزايا الكاملة لتطبيقات حزم APK القابلة للحمل.
هل هناك أي مطوّرين يستخدمون حِزم APK القابلة للتحديث حاليًا؟
نعم. يستخدم أكثر من مليون تطبيق ولعبة حِزم التطبيقات لنشر إصدارات الإصدار العلني على Google Play، بما في ذلك معظم التطبيقات الرائجة التي تمثل مليارات عمليات التثبيت النشطة. إذا كنت تستخدم Google Play لتثبيت التطبيقات، تم نشر العديد من التطبيقات على جهازك كحِزم تطبيقات.
هل تمنع مبادرة AAB المستخدمين من "التثبيت من مصدر غير معروف" للتطبيقات؟
لا، لا تمنع حِزم APKS المعتمدة (AAB) المستخدمين من تثبيت حِزم APK من أي مصدر. وبما أنّ تنسيق AAB هو مجرد تنسيق نشر، لا يغيّر ذلك طريقة عمل منصة Android.
إذا كان المطوّر يستخدم حِزم AAB لإرسال حِزم APK محسَّنة، هل يعني ذلك أنّه من الممكن أن يواجه المستخدمون الذين يشاركون حِزم APK هذه مشاكل؟
كانت هناك دائمًا حالات نادرة على نظام التشغيل Android لا يمكن فيها نقل حِزم APK مباشرةً من جهاز إلى آخر، بغض النظر عمّا إذا كان التطبيق منشورًا من خلال حِزم APK أو حِزم AAB. على وجه التحديد، عند تحسين حِزم APK لجهاز معيّن (على سبيل المثال، لبنية شريحة معيّنة)، قد يؤدي نقل حِزم APK هذه مباشرةً إلى جهاز آخر إلى حدوث مشاكل إذا كان الجهاز المستهدَف لا يتطابق مع خصائص الجهاز الأصلي. في هذه الحالات، يجب تثبيت حزمة APK أو مجموعة من حِزم APK المناسبة للجهاز المستهدف.
هل يمكنني نشر التطبيق في عدّة متاجر تطبيقات؟
نعم، يمكنك نشر تطبيقك في عدة متاجر تطبيقات سواء كنت تستخدم حِزم APK القابلة للتحديث أم لا. يمكنك نشر حِزم APK على Google Play ومتاجر التطبيقات الأخرى المتوافقة مع حِزم APK في الوقت نفسه الذي تنشر فيه حِزم AAB على متاجر التطبيقات أو المواقع الإلكترونية الأخرى التي لا تتوافق مع حِزم AAB.
هل ينطبق شرط استخدام حِزم AAB على التطبيقات الخاصة المنشورة على "Google Play للأعمال"؟
لا، يمكن نشر التطبيقات الخاصة التي يتم نشرها على "Google Play للأعمال" باستخدام حِزم APK أو حِزم AAB. عند إنشاء تطبيق خاص جديد، يمكنك اختيار تغيير مفتاح توقيع التطبيق وإيقاف ميزة "توقيع التطبيق" من Play إذا أردت نشر حزمة APK خاصة موقَّعة ذاتيًا.
لمحة عن ميزة "توقيع التطبيق" من Play
ما هي ميزة "توقيع التطبيق" من Play؟
يجب توقيع كل حزمة APK على Android باستخدام مفتاح توقيع التطبيق لكي تكون قابلة للتثبيت. يستخدم نظام Android المفتاح لضمان أن تتطابق أي تحديثات للتطبيق مع التطبيق المثبَّت على الجهاز، وذلك لكي تأتي كل تحديثات التطبيق من حامل المفتاح نفسه بعد اكتمال عملية التثبيت الأولية. ويحدّ ذلك من خطر توفُّر تحديثات ضارة للتطبيقات. تم إطلاق ميزة توقيع التطبيق من Play في عام 2017، وهي خدمة إدارة مفاتيح التشفير في Google Play التي تحمي مفاتيح توقيع التطبيقات الخاصة بمطوّري التطبيقات على Play وتديرها لتطبيقاتهم الموزَّعة على Play. بالإضافة إلى ذلك، تُجري ميزة "توقيع التطبيق" من Play عملية التوقيع على حِزم APK التي ينشئها Play من حِزم AAB المحمَّلة. إنّ ميزة "توقيع التطبيق" من Play مطلوبة للتطبيقات الجديدة كي تتمكّن من استخدام حِزم AAB.
لماذا أطلقت Google ميزة "توقيع التطبيق" من Play؟
على مدار سنوات، كانت مفاتيح توقيع التطبيقات تشكل تحديًا لمطوّري التطبيقات على Play. سيؤدي فقدان المفتاح إلى عدم التمكّن من إرسال تحديثات التطبيق إلى المستخدمين، كما أنّ تعرُّض المفتاح للاختراق يعرّض المستخدمين لخطر التحديثات الضارّة. من الشائع في توزيع البرامج أن تخزِّن قنوات التوزيع مفاتيح البرامج التي توزّعها وتديرها، لأنّ ذلك يقلل من هذه المخاطر. تم إطلاق ميزة توقيع التطبيق من Play في عام 2017 للحد من خطر فقدان مفاتيح توزيع Play، ولإتاحة حماية مستخدمي Play في حال اختراق المفتاح، ولمنح المطوّرين مزايا الاستثمار المستمر في الأمان من Google.
كيف تضمن Google أمان ميزة "توقيع التطبيق" من Play؟
تحمي Google مفاتيح المطوّرين في البنية الأساسية الآمنة نفسها الرائدة في المجال والمستخدَمة لحماية مفاتيح Google. يتم تخزين المفاتيح مشفّرة على خوادم إدارة مفاتيح التشفير المخصّصة والمغلقة التي تتضمّن قوائم تحكّم بالوصول (ACL) صارمة ومسارات تدقيق تتحكّم في الوصول إلى الملفات وتتيح رصد أي محاولات للتلاعب بها، وذلك في ما يتعلّق بجميع العمليات. يمكنك الاطّلاع على تفاصيل عمليات الأمان في السحابة الإلكترونية وأفضل الممارسات المتعلّقة بها على الإنترنت من Google.
هل يمكنني اختيار مفتاح توقيع التطبيق الذي يستخدمه Play لتطبيقي؟
نعم، عند إنشاء تطبيق جديد، يمكنك اختيار السماح لـ Google بإنشاء مفتاح توقيع تطبيق وتخزينه نيابةً عنك أو اختيار مفتاح توقيع التطبيق الخاص بك وتحميل نسخة منه.
أريد استخدام مفتاح توقيع التطبيق نفسه في Play ومتاجر التطبيقات الأخرى. هل هذا لا يزال ممكنًا؟
إذا قرّرت استخدام مفتاح التوقيع نفسه في تطبيقات متعددة على متاجر تطبيقات متعددة بعد مراعاة طريقة عمل تحديثات التطبيقات، سيظل بإمكانك إجراء ذلك. يُرجى العِلم أنّ هذا سيسمح لكل متجر تطبيقات بإجراء تحديثات لتطبيقك على جميع المتاجر. لديك خياران:
- يمكنك إنشاء مفتاح على الجهاز وتحميل نسخة منه إلى Play. بهذه الطريقة، يمكنك استخدام المفتاح نفسه الذي يستخدمه Google Play عند إنشاء تطبيقك لأجل متاجر تطبيقات أخرى.
- يمكنك استخدام مفتاح أنشأته Google لميزة "توقيع التطبيق" من Play، ثم تنزيل حِزم APK للتوزيع من Play Console وموقَّعة باستخدام المفتاح الذي أنشأته Google واستخدام حِزم APK هذه للتوزيع على متاجر التطبيقات أو المواقع الإلكترونية الأخرى.
هل يمكنني استخدام ميزة "توقيع التطبيق" من Play لتطبيق تم إنشاؤه قبل آب (أغسطس) 2021 بدون تقديم نسخة من مفتاح توقيع التطبيق؟
نعم، تتيح ميزة "توقيع التطبيق" من Play خيار "ترقية المفتاح" للتطبيقات التي تم إنشاؤها قبل آب (أغسطس) 2021. يتيح ذلك للتطبيق بدء استخدام ميزة "توقيع التطبيق" من Play باستخدام مفتاح توقيع تطبيق جديد. ومع ذلك، لاستخدام هذا الخيار، بعد إجراء الترقية، سيُطلب منك تحميل شيئين في كل إصدار: حِزمة تطبيق وحِزمة APK قديمة موقَّعة باستخدام مفتاح توقيع التطبيق القديم. سيستخدم Play حِزم AAB لإنشاء حِزم APK موقَّعة باستخدام المفتاح الذي تمت ترقيته من أجل عمليات التثبيت الجديدة وتحديثاتها، وفي الوقت نفسه، سيستخدم Play حِزم APK القديمة لتوفير تحديثات التطبيق للمستخدمين الذين ثبَّتوا تطبيقك. وبمرور الوقت، سيتم نقل عمليات التثبيت القديمة إلى المفتاح الذي تمت ترقيته (مثلاً عندما ينتقل المستخدمون إلى جهاز جوّال جديد).
هل هناك طريقة لاستخدام مفتاح توقيع التطبيق نفسه للتطبيقات التي تم إنشاؤها قبل آب (أغسطس) 2021 والتطبيقات التي تم إنشاؤها بعد آب (أغسطس) 2021؟
لا يُنصح بشكل عام باستخدام مفتاح توقيع التطبيق نفسه لتطبيق متعدّد، لأنّه من الأنسب استخدام مفتاح فريد لكل تطبيق. ومع ذلك، إذا كنت بحاجة إلى استخدام مفتاح توقيع التطبيق نفسه لتطبيقات متعددة، يمكن فعل ذلك. يمكنك أيضًا تحميل نسخة من مفتاح توقيع التطبيق الحالي عند ضبط ميزة "توقيع التطبيق" من Play. وإذا كنت لا تريد مشاركة مفتاح توقيع التطبيق الحالي، يمكنك استخدام خيار "ترقية المفتاح" القادم لتطبيقك الذي تم إنشاؤه قبل آب (أغسطس) 2021 لبدء استخدام ميزة "توقيع التطبيق" من Play. بهذه الطريقة، يمكن لكل من تطبيقك الذي تم إنشاؤه قبل آب (أغسطس) 2021 وتطبيقك الذي تم إنشاؤه بعد آب (أغسطس) 2021 استخدام المفتاح الجديد نفسه.
هل يمكنني تغيير مفتاح توقيع التطبيق المستخدَم في ميزة "توقيع التطبيق" من Play؟
نعم، يمكن للتطبيقات تغيير مفتاحها من خلال طلب ترقية مفتاح في Play Console.
كيف يمكنني التأكّد من أنّ Google Play لم يُجري تغييرات غير متوقّعة على الرمز البرمجي؟
يمكنك في أي وقت تنزيل العناصر وفحصها من Google Play ومن أحدث الإصدارات والحِزم في Play Console. بالإضافة إلى ذلك، ستتيح واجهة برمجة التطبيقات Play Developer API قريبًا إمكانية التحقّق من حِزم APK قبل إرسالها إلى قناة إصدار. يمكنك أيضًا استخدام ميزة اختيارية تُسمى شفافية الترميز لحِزم التطبيقات. من خلال ميزة شفافية الرموز البرمجية، يمكنك أنت والمستخدمون النهائيون استخدام متجر تطبيقات مثل Google Play لعرض الرموز البرمجية التي يقدّمها.
كيف تعمل ميزة "شفافية الترميز لحِزم التطبيقات"؟
شفافية الترميز هي ميزة اختيارية تتيح لمتجر التطبيقات الذي يوزّع تطبيقك أن يُحصي الرموز البرمجية التي يقدّمها. لاستخدام ميزة شفافية الرمز، عليك إنشاء ملف شفافية رمز في تطبيقك يمثّل الرمز البرمجي (وهو ملف يحتوي على علامات دالة لرمز تطبيقك) في وقت الإنشاء. يتم توقيعها باستخدام رمزك الخاص مفتاح الشفافية الذي لا يملك أحد غيره. ولن تحتاج أبدًا إلى تقديم رمز مفتاح الشفافية إلى Google. بعد ذلك، يمكنك فحص حزمة APK المثبَّتة على أحد الأجهزة والتأكّد من أنّ ملف شفافية الرمز البرمجي الذي وقّعته لا يزال مطابقًا لرمز حزمة APK. يمنحك ذلك ضمانًا بأنّه لم يتم تعديل الرمز الذي تم التحقّق منه من خلال ميزة "شفافية الرموز"، حتى إذا تمت إعادة توقيع ملف APK نفسه أثناء التوزيع. إذا كان هناك تعارض، هذا دليل على أنّه تم تغيير الرمز أثناء التوزيع. لا تؤدي ميزة "شفافية الرموز البرمجية" إلى استبدال توقيعات حِزم APK، وهي ليست جزءًا من نظام Android الأساسي.
نشر التطبيقات والألعاب الكبيرة على Google Play
ما هي حدود حجم التطبيقات على Google Play عند استخدام حِزم APK القابلة للتحديث؟
يبلغ الحد الأقصى لحجم تنزيل الملفات المضغوطة لمكوّن أساسي تم إنشاؤه من حِزمة AAB هو 200 ميغابايت. وهذا يعني أنّ Google Play سينشئ أولاً الوحدة الأساسية، ثم أي وحدات ميزات أو حِزم مواد عرض إضافية من حِزمة التطبيق القابلة للنشر (AAB). بعد ذلك، يتحقّق Google Play مما إذا كان الحد الأقصى التراكمي لحجم التنزيل المضغوط الذي يتلقّاه أي جهاز فردي لا يتجاوز 4 غيغابايت.
هل يتيح Google Play استخدام ملفات البيانات الموسّعة (OBB) في حِزم APK المُعدّة للنشر على جميع الأجهزة (AAB)؟
لا، لا يتيح Google Play استخدام ملفات البيانات الموسّعة في حِزم AAB. ملفات البيانات الموسَّعة (OBB) هي حلّ قديم خاص بمنصة Google Play لنشر التطبيقات والألعاب الكبيرة باستخدام حِزم APK. تتوفّر بدائل من Google وجهات خارجية لتطبيقات AAB التي يزيد حجمها عن 200 ميغابايت.
كيف يمكنني نشر تطبيق أو لعبة أكبر من 200 ميغابايت على Google Play؟
يمكن للتطبيقات والألعاب الكبيرة التي تستخدم حِزم APK القابلة للتحديث استخدام خدمات العرض في Play مثل "عرض المواد في Play" أو "عرض الميزات في Play" لتجاوز الحد الأقصى للحجم وهو 200 ميغابايت، أو يمكنها استخدام شبكات تسليم المحتوى التابعة لجهات خارجية.
ما هي المزايا التي تقدّمها ميزة "عرض المواد في Play" مقارنةً بملفات البيانات الموسّعة (OBB)؟
على Google Play، كانت حِزم APK تتطلّب ملفات بيانات موسّعة منفصلة (OBB) لعرض موارد إضافية للمستخدمين. ومع ذلك، لا تكون حِزم OBB آمنة جدًا لأنّها لم يتم توقيعها ويتم تخزينها في مساحة التخزين الخارجية للتطبيق. باستخدام ميزة "عرض المواد في Play"، يمكن للألعاب التي يزيد حجمها عن 200 ميغابايت استبدال ملفات OBB من خلال نشر اللعبة بأكملها كحزمة تطبيق واحدة على "متجر Play". بالإضافة إلى توفير عملية نشر أكثر سلاسة ووضعَي إرسال ومرونة، تعني ميزة PAD أنّ التحديثات تتطلّب مساحة تخزين أقل على الجهاز. ونتيجةً لذلك، يمكن أن تحقّق معدّلات تثبيت أعلى. أخيرًا، أصبح تنسيق ASTC متوافقًا الآن مع 80% تقريبًا من الأجهزة، وتتيح لك ميزة استهداف تنسيق ضغط النسيج في أداة PAD عرض محتوى بتنسيق ASTC على الأجهزة المتوافقة معه. يمكنك استهداف أوسع نطاق من الأجهزة مع الاستفادة بفعالية من الأجهزة المتاحة و مساحة تخزين الجهاز.
ميزات العرض في Google Play التي تتيحها حِزم APK القابلة للنشر
ما هي أمثلة الميزات الجديدة التي يوفّرها Play للمطوّرين الذين يستخدمون حِزم APK القابلة للنشر على جميع الأجهزة؟
تعالج متاجر التطبيقات، مثل Google Play، حِزم AAB إلى حِزم APK قابلة للتثبيت. من خلال تولّي مسؤولية حِزم APK، يمكنك تقديم ميزات وخدمات جديدة تفيد المطوّرين والمستخدمين. يقدّم Play حاليًا خدمات مماثلة يستخدمها المطوّرون على نطاق واسع ويقدّرونها، ومن هذين الخدمةَين مثلاً عرض الميزات في Play وعرض المواد في Play.
ما هي ميزة "عرض الميزات في Play"؟
من ميزات حِزم التطبيقات أنّها تسمح بفصل التطبيق إلى وحدات متعددة تُعرف باسم "وحدات الميزات". ويمكن بعد ذلك إرسال هذه الوحدات ديناميكيًا إلى المستخدمين والأجهزة في أوقات مختلفة (على عكس السابق عندما كان يجب إرسال كل شيء كملف واحد في وقت التثبيت). تتيح لك ميزة "عرض الميزات في Play" تخصيص وحدات الميزات التي يتم عرضها على الجهاز ووقت عرضها، وذلك من خلال أوضاع العرض في وقت التثبيت والعرض المشروط والعرض عند الطلب. يتيح لك ذلك تقليل حجم تطبيقك، ما يؤدي إلى زيادة عمليات التثبيت، ويمكنك أيضًا تخصيص تجربة تطبيقك. على سبيل المثال، يمكنك توفير ميزة نادرًا ما يتم استخدامها، مثل خدمة دعم العملاء، عند الطلب للمستخدمين الذين يحتاجون إليها بدلاً من وقت التثبيت، ما يقلل من حجم التثبيت الأولي لجميع المستخدمين. يمكنك أيضًا توفير تجربتك الكاملة للتطبيق على الأجهزة الراقية مع توفير تجربة تطبيق أصغر حجمًا تتضمّن ميزات اختيارية عند الطلب على الأجهزة المنخفضة المستوى التي تفرض قيودًا على البيانات وتخزين الجهاز.
ما هي ميزة "عرض المواد في Play"؟
تتيح ميزة "عرض مواد في Play" لمطوّري الألعاب تحسين تجربة المستخدمين وتقليل وقت انتظارهم من خلال عرض مواد العرض الكبيرة ديناميكيًا في الوقت الأمثل. يمكن للألعاب التي تستخدم أداة "إرسال مواد العرض" من Play أيضًا الاستفادة من ميزة استهداف تنسيقات ضغط البنية، ما يضمن للمستخدمين الحصول على مواد العرض المناسبة لأجهزةهم فقط، بدون إهدار المساحة أو معدل نقل البيانات.
هل تتوفّر ميزات إرسال التطبيقات هذه في متاجر التطبيقات الأخرى؟
لا، تتطلب ميزتا "عرض الميزات في Play" و"عرض مواد العرض في Play" تطبيقات وألعابًا تتفاعل مباشرةً مع "متجر Google Play". هذه الخدمات الاختيارية هي مثال على ما يميز Play كمتجر تطبيقات ويقدّم قيمة وفائدة إضافية للمطوّرين ومستخدمي Play. تقدّم متاجر التطبيقات الأخرى التي تستخدم حِزم التطبيقات وملفات APK خدمات متاجر التطبيقات الخاصة بها للمطوّرين.