البناء والنشر في التطوير المحمول: ما هو، وما هي الصيغ وكيف يعمل

المؤلف: IT Sectr نُشر: 2026-04-07 وقت القراءة: 10 دق

بناء ونشر التطبيق المحمول هو عملية تحويل الشيفرة المصدرية إلى ملف قابل للتثبيت (APK، AAB، IPA) وتحميله إلى متاجر التطبيقات. وفقاً لـ Google Play Console (2025)، Android App Bundle (AAB) هو الصيغة الإلزامية للنشر على Google Play منذ أغسطس 2021. في هذه المقالة سنتعرف على صيغ البناء والترجمة وتوقيع الشيفرة وعملية النشر والاختبار التجريبي.

أهم النقاط

  • APK — ملف التثبيت التقليدي لنظام Android؛ AAB — الصيغة الحديثة لـ Google Play مع إنشاء APK ديناميكي.
  • IPA — ملف التثبيت لنظام iOS، موقع بشهادة Apple. البناء فقط على macOS.
  • الترجمة: JIT (Android حتى 6.0)، AOT (Android 7+ ART)، Bitcode (iOS، اختياري).
  • Code Signing — توقيع إلزامي للتطبيق بشهادة رقمية لتحديد هوية المطور.
  • TestFlight (iOS) و Internal Testing (Android) — أدوات للاختبار التجريبي قبل النشر.

صيغ البناء: APK، AAB، IPA

APK مقابل AAB

APK (Android Package Kit) — الصيغة التقليدية لبناء ونشر التطبيقات المحمولة على Android. يحتوي APK على جميع الشيفرة والموارد وبيان التطبيق. AAB (Android App Bundle) — صيغة قدمتها Google في 2018 وأصبحت إلزامية للتطبيقات الجديدة اعتباراً من أغسطس 2021. AAB لا يتم تثبيته مباشرة — يقوم Google Play بإنشاء APK محسّن لكل جهاز من AAB ديناميكياً.

مزايا AAB: حجم التحميل أصغر بنسبة 15% في المتوسط (عن طريق توصيل الموارد الضرورية فقط: كثافات الشاشة الصحيحة واللغات وهياكل المعالجات). يدعم AAB أيضاً التوصيل المعياري — يمكنك تحميل الوحدات عند الطلب (Play Feature Delivery) أو بشكل مؤجل (Play On-Demand). بالنسبة للمطورين، AAB إلزامي؛ للتوزيع خارج Google Play (التثبيت الجانبي، الأسواق) — فقط APK.

IPA

IPA (iOS App Store Package) — ملف التثبيت لنظام iOS، وهو أرشيف ZIP يحتوي على تطبيق موقع. يحتوي IPA على مجلد Payload/ مع حزمة .app و Provisioning Profile والتوقيع. يتم بناء IPA فقط على macOS عبر Xcode، الذي ينشئ أرشيفاً (.xcarchive) ويصدر IPA. للتوزيع عبر App Store، يتم توقيع IPA باستخدام Apple Distribution Certificate؛ للتوزيع Ad Hoc أو Enterprise — بالشهادات المقابلة.

مقارنة صيغ البناء لنظامي iOS و Android
المعامل APK AAB IPA
المنصةAndroidAndroid (Google Play)iOS
الصيغةأرشيف ZIPأرشيف ZIPأرشيف ZIP
التثبيت المباشرنعملا (عبر Google Play)عبر App Store / MDM
التوقيعKeystore (JKS)Keystore (JKS/PEPK)Apple Certificate
App Thinningلانعم (تلقائياً)نعم (Slicing، Bitcode)

الترجمة والتحسين: JIT، AOT، ART، Bitcode

JIT مقابل AOT

JIT (Just-In-Time) — ترجمة الشيفرة أثناء تنفيذ التطبيق، مما يؤثر على سرعة البناء والنشر. على Android حتى الإصدار 5.0 (Lollipop) كان يُستخدم Dalvik VM مع ترجمة JIT. عند كل تشغيل للتطبيق، كان يتم تحويل bytecode DEX إلى شيفرة آلية «أثناء التشغيل». العيب: بطء عند التشغيل الأول واستهلاك إضافي للطاقة. AOT (Ahead-Of-Time) — ترجمة الشيفرة قبل تشغيل التطبيق، أثناء التثبيت. بدءاً من Android 7.0 (Nougat)، يقوم ART (Android Runtime) بترجمة التطبيق بالكامل أثناء التثبيت.

ART (Android Runtime) — بيئة التشغيل التي حلت محل Dalvik في Android 5.0. يستخدم ART نهجاً هجيناً: ترجمة AOT أثناء التثبيت + JIT للطرق التي يتم تنفيذها بشكل متكرر. هذا يجمع بين سرعة AOT (بدء تشغيل سريع) ومرونة JIT (تحسين تكيفي). النتيجة: زاد أداء تطبيقات Android بنسبة 20-30% مقارنة بـ Dalvik. بالنسبة للمطورين، الانتقال إلى ART شفاف — الشيفرة لا تتطلب تغييرات.

Bitcode و App Thinning

Bitcode — تمثيل وسيط للشيفرة (IR) تستخدمه Apple لإعادة ترجمة IPA لهياكل معالجات مختلفة. Bitcode اختياري: لتطبيقات iOS هو مفعل افتراضياً، لـ watchOS و tvOS إلزامي. يمكن لـ Apple إعادة ترجمة Bitcode عند إصدار معالجات جديدة دون مشاركة المطور. App Thinning — تقنية Apple التي تتضمن Slicing (توصيل الموارد الضرورية فقط للجهاز) و On-Demand Resources (تحميل الموارد عند الطلب). يقلل App Thinning حجم التحميل من App Store بنسبة 30-50%.

DEX — صيغة bytecode لنظام Android، يتم تنفيذها بواسطة ART/Dalvik. يتم ترجمة شيفرة Kotlin/Java المصدرية إلى ملفات class، ثم إلى DEX عبر dx أو d8 (أداة حديثة وأسرع). Multidex — آلية للتطبيقات التي تتجاوز حد 65,536 طريقة في ملف DEX واحد. في المشاريع الحديثة، يتم تفعيل multidex تلقائياً إذا كان targetSdkVersion >= 21.

توقيع الشيفرة: Code Signing، Keystore، Provisioning Profile

Android: Keystore

Keystore — ملف يحتوي على المفتاح الخاص والشهادة لتوقيع تطبيق Android أثناء البناء. يتم إنشاء Keystore عبر keytool (الأمر -genkey) أو Android Studio. مهم: لا يمكن فقدان Keystore — بدونه لن تتمكن من تحديث التطبيق على Google Play. معاملات التوقيع: keyAlias، keyPassword، storePassword و storeFile. الصيغة: JKS (Java KeyStore) أو PEPK (Play Encrypted Private Key) لـ AAB.

App Bundle ID (Android) — المعرف الفريد للتطبيق بترميز الحزمة (com.example.app). Version Code — عدد صحيح للترقيم الداخلي للإصدارات (كل بناء جديد يزيده). Version Name — سلسلة نصية تظهر للمستخدم (1.2.3). يتم تعيين هذه المعاملات في build.gradle على مستوى التطبيق.

iOS: Apple Certificate و Provisioning Profile

Apple Certificate — شهادة رقمية تتحقق من هوية المطور. الأنواع: Development (للتصحيح)، Distribution (لـ App Store)، Ad Hoc (للتوزيع المحدود). يتم إنشاء الشهادات في Apple Developer Account وتنزيلها إلى Keychain. Provisioning Profile — ملف يربط الشهادة و App ID (Bundle Identifier) وقائمة الأجهزة المسموح بها. بدون Provisioning Profile، لن يعمل التطبيق على الجهاز.

Bundle ID (iOS) — المعرف الفريد للتطبيق (com.example.app). Build Number — رقم البناء، يزداد مع كل build. Marketing Version — الإصدار الذي يظهر للمستخدم. إدارة الإصدارات: لنظام iOS، يتم تعيين المعاملات في Info.plist و Project Settings؛ لنظام Android — في build.gradle. في IT Sectr، نقوم بأتمتة تحديثات الإصدارات عبر Fastlane — مما يزيل الأخطاء البشرية أثناء الإصدار.

عملية النشر في المتاجر

Google Play Console

Google Play Console — أداة لنشر تطبيقات Android. العملية: تسجيل حساب مطور ($25 مرة واحدة)، إنشاء تطبيق، تعبئة البيانات الوصفية (الاسم، الوصف، لقطات الشاشة، الفئة)، تحميل AAB، تكوين الأسعار والتوزيع، المراجعة. تتحقق Google من التطبيق تلقائياً (الفيروسات، الامتثال للسياسات) ويدوياً لبعض الفئات. تستغرق المراجعة من بضع ساعات إلى 2-3 أيام.

App Store Connect

App Store Connect — منصة Apple لنشر تطبيقات iOS. العملية: حساب مطور Apple ($99/سنة)، إنشاء تطبيق في App Store Connect، تحضير IPA في Xcode (Archive → Distribute App → App Store Connect)، تحميل عبر Transporter أو Xcode، تعبئة البيانات الوصفية، إرسال للمراجعة. App Review — المراجعة اليدوية من Apple قد تستغرق من 24 ساعة إلى 7 أيام. أسباب الرفض النموذجية: أزرار لا تعمل، محتوى غير مكتمل، طلب أذونات دون شرح.

الاختبار التجريبي: TestFlight، Closed/Open Beta

TestFlight (iOS)

TestFlight — الأداة الرسمية من Apple للاختبار التجريبي لتطبيقات iOS. يدعم TestFlight Internal Testing (حتى 100 مختبر عبر البريد الإلكتروني، بدون مراجعة) و External Testing (حتى 10,000 مختبر، مع مراجعة Apple). البناءات متاحة لمدة 90 يوماً، وبعد ذلك يجب تحميل بناء جديد. يقوم TestFlight بتحديث التطبيق تلقائياً لدى المختبرين عند تحميل بناء جديد.

Internal / Closed / Open Beta (Android)

Internal Testing (Android) — حتى 100 مختبر، بدون مراجعة Google، البناء متاح فوراً. Closed Beta — حتى 1000 مختبر عبر البريد الإلكتروني أو Google Groups، بدون مراجعة. Open Beta — عدد غير محدود من المختبرين عبر رابط عام، مع مراجعة Google. Staged Rollout — زيادة تدريجية لنسبة المستخدمين الذين يتلقون التحديث (5% ← 20% ← 50% ← 100%). هذه هي الطريقة الأكثر أماناً للإصدار.

App Thinning (iOS) — تقليل تلقائي لحجم IPA المُحمَّل: Slicing (موارد ضرورية فقط للجهاز)، Bitcode (تحسين للمعالج)، On-Demand Resources (تحميل عند الطلب). في IT Sectr، نستخدم TestFlight للاختبار التجريبي لنظام iOS و Internal Testing لنظام Android — وهذا يسمح لنا باكتشاف المشكلات قبل الإصدار الجماعي.

الأسئلة الشائعة

ما الفرق بين APK و AAB؟

APK — ملف تثبيت عالمي، يعمل على أي جهاز. AAB — صيغة لـ Google Play تنشئ APK الأمثل لكل جهاز. حجم التحميل عبر AAB أقل بنسبة 15%. لـ Google Play، AAB إلزامي؛ للتثبيت الجانبي — APK.

ماذا يحدث إذا فقدت Keystore؟

لن تتمكن من تحديث التطبيق على Google Play — سيتعين عليك إنشاء تطبيق جديد باسم حزمة جديد. احفظ Keystore في مكان آمن (مدير كلمات المرور، Git مشفر). Google Play App Signing (استخدام مفاتيح Google) يقلل من هذا الخطر.

كم تكلفة النشر في المتاجر؟

Google Play — $25 مرة واحدة لحساب المطور. App Store — $99/سنة. كلا المبلغين يشملان عدداً غير محدود من التطبيقات. لنظام iOS تحتاج أيضاً إلى Mac (من $999) أو استئجار Mac سحابي.

ما هو Staged Rollout؟

Staged Rollout — طرح تدريجي للتحديث: أولاً 5% من المستخدمين، ثم 20%، 50% و 100%. إذا تم اكتشاف أعطال في أي مرحلة، يتوقف الطرح. متاح في Google Play Console.

هل أحتاج إلى دفع ثمن حساب المطور للاختبار؟

لنظام Android — لا، يمكنك تثبيت APK على الجهاز عبر USB أو المحاكي بدون حساب. لنظام iOS — نعم، بدون حساب $99/سنة، سيعمل التطبيق فقط على المحاكي، وليس على جهاز حقيقي.

الملخص

  • AAB — الصيغة الحديثة لـ Google Play (إلزامي منذ 2021). APK — للتوزيع خارج المتجر.
  • IPA — ملف تثبيت iOS، يُبنى فقط على Mac، يُوقع بشهادة Apple.
  • ART (Android Runtime) يستخدم نهجاً هجيناً AOT + JIT؛ Bitcode — تمثيل وسيط اختياري لنظام iOS.
  • Keystore (Android) و Apple Certificate + Provisioning Profile (iOS) — مكونات إلزامية لتوقيع الشيفرة.
  • Google Play Console — $25 مرة واحدة؛ App Store Connect — $99/سنة. المراجعة تستغرق من ساعات إلى أسبوع.
  • TestFlight — اختبار تجريبي لنظام iOS؛ Internal / Closed / Open Beta — لنظام Android.
  • قم بأتمتة توقيع الشيفرة والبناء عبر Fastlane — هذا يزيل الأخطاء ويسرع الإصدارات.

سنقوم بتطوير تطبيق جوال جاهز

تقدم IT Sectr تطبيقات iOS وAndroid للشركات الناشئة والشركات منذ عام 2017. سوف نقدم لك النصح ونقترح أفضل حل.

مناقشة المشروع