إتقان إرسال تطبيقات iOS إلى متجر التطبيقات وأتمتة CI/CD عبر Xcode Cloud
٢٢ سبتمبر ٢٠٢٥
الرحلة من كتابة أول سطر من كود Swift إلى رؤية تطبيقك على متجر التطبيقات بشكل مباشر مثيرة — لكنها قد تشعرك أيضًا بالإرهاق. الشهادات، ملفات التهيئة، App Store Connect، TestFlight، وقنوات CI/CD الآن عبر Xcode Cloud تشكل جميعها نظامًا بيئيًا معقدًا يجب على كل مطور iOS التنقل فيه.
سترشدك هذه الدليل خلال كل خطوة من العملية, بدءًا من إنشاء معرف تطبيقك إلى أتمتة سير العمل للتوزيع باستخدام Xcode Cloud. سواء كنت مطورًا مستقلًا أو جزءًا من فريق ناشئ ينمو، سيساعدك هذا المنشور على تبسيط عملية إصدار iOS الخاصة بك.
جدول المحتويات
- فهم الأساسيات
- إنشاء وإدارة معرفات التطبيقات
- تسجيل الأجهزة
- الشهادات: التطوير مقابل التوزيع
- شرح ملفات التهيئة
- التوزيع عبر TestFlight
- إرسال التطبيق إلى متجر التطبيقات
- الأتمتة باستخدام Xcode Cloud
- دليل عملي لإعداد CI/CD
- استنتاجات قابلة للتطبيق
فهم الأساسيات
قبل أن تتمكن من رفع تطبيق إلى متجر التطبيقات، عليك فهم العناصر الأساسية لبيئة Apple:
- معرف التطبيق (مُعرّف الحزمة): مُعرف فريد لتطبيقك (
com.company.app). - الشهادات: دليل رقمي على أنك مطور Apple معتمد.
- ملفات التهيئة: حاويات تربط معرف التطبيق الخاص بك، والشهادات، والأجهزة المسجلة معًا.
- App Store Connect: البوابة لإدارة التوزيع، والبيانات الوصفية، وتحليلات الأداء.
- TestFlight: خدمة توزيع بيتا الخاصة بـ Apple.
- Xcode Cloud: منصة Apple السحابية لـ CI/CD لبناء واختبار وتوزيع التطبيقات.
بمجرد أن تفهم كيف تعمل هذه العناصر معًا، يصبح عملية الإرسال أسهل بكثير في التنقل.
إنشاء وإدارة معرفات التطبيقات
لكل تطبيق iOS مُعرّف حزمة يميزه بشكل فريد. عند إنشاء مشروع Xcode جديد:
// Example Swift App ID in Xcode project settings
Bundle Identifier: com.movidevtalk.sampleDemoApp
يجب تسجيل هذا المعرف في بوابة مطور Apple:
- سجّل الدخول إلى بوابة مطور Apple.
- انتقل إلى الشهادات، المعرفات & ملفات التهيئة.
- أنشئ معرف تطبيق جديد يتوافق مع مُعرّف الحزمة الخاص بك.
هذا يضمن أن Apple يمكنها تتبع تطبيقك عبر الأجهزة، وملفات التهيئة، وقنوات التوزيع.
تسجيل الأجهزة
إذا أردت اختبار تطبيقك على الأجهزة المادية، يجب عليك تسجيلها:
- القيود: ما يصل إلى 100 جهاز iPhone، و100 جهاز iPad، و100 جهاز Mac سنويًا.
- الخطوات:
- اجمع مُعرّف UUID للجهاز الخاص بك.
- أضفه تحت قسم الأجهزة في بوابة المطور.
للفِرق الكبيرة، اعتمد التدوينات التسمية مثل:
TeamAlpha_Rihan_iPhone14
TeamBeta_Alice_iPadPro
هذا يضمن سهولة تتبع الأجهزة وإزالتها عند مغادرة المطورين.
بديلًا، إذا تم التوزيع عبر TestFlight, يتم تسجيل الأجهزة تلقائيًا عند تثبيت المُختبرين للتطبيق.
الشهادات: التطوير مقابل التوزيع
تُوثق الشهادات هويتك كمطور. هناك نوعان رئيسيان:
شهادة التطوير
- تُستخدم لتشغيل التطبيقات على الأجهزة المتصلة بجهاز Mac الخاص بك.
- يجب على كل مطور إنشاء شهادته الخاصة.
شهادة التوزيع
- تُستخدم لتوزيع التطبيقات خارج جهازك المحلي.
- يمكن استخدامها في ثلاث قنوات:
- App Store (الإطلاق العام)
- Ad Hoc (مجموعة محدودة من الأجهزة)
- Enterprise (التوزيع الداخلي للشركة)
إنشاء طلب توقيع الشهادة (CSR)
على جهاز Mac الخاص بك:
# فتح Keychain Access > Certificate Assistant
# طلب شهادة من سلطة الشهادات
ستقدم هذا CSR عند إنشاء الشهادات في بوابة المطور.
شرح ملفات التهيئة
يربط ملف التهيئة:
- App ID
- الشهادات
- الأجهزة (إذا لزم الأمر)
أنواع ملفات التهيئة:
- التطوير – للاختبار المحلي.
- Ad Hoc – لتوزيعه على مُختبرين محددين خارج جهازك.
- App Store – للتوزيع العام.
هيكل مثال:
ملف التهيئة = {
App ID: com.movidevtalk.sampleDemoApp,
الشهادات: [DevCert_Alice, DevCert_Rihan],
الأجهزة: [iPhone14Rihan, iPadProAlice]
}
عند تثبيت ملف التهيئة، يربط Xcode تلقائيًا الملف بالمشروع الصحيح.
التوزيع عبر TestFlight
يُبسّط TestFlight اختبارات بيتا:
- يدعم المُختبرين الداخليين (أعضاء الفريق في App Store Connect).
- يدعم المُختبرين الخارجيين (روابط عامة أو دعوات عبر البريد الإلكتروني).
خطوات رفع بناء:
- أنشئ أرشيفًا في Xcode:
Product > Archive
- ارفعه إلى App Store Connect.
- قم بتكوين مُختبرين TestFlight.
- شارك عبر رابط عام أو البريد الإلكتروني.
هذا يلغي الحاجة إلى تسجيل معرفات الأجهزة يدويًا.
إرسال التطبيق إلى App Store
عندما يكون تطبيقك جاهزًا للإطلاق العام:
- تأكد من أن إصدار تطبيقك هو
1.0.0للإطلاق الأول. - قدم البيانات المطلوبة:
- اسم التطبيق والوصف
- لقطات الشاشة
- الكلمات المفتاحية
- رابط سياسة الخصوصية
- جهة الاتصال للدعم
- أضف بناءك تحت متجر التطبيقات > الإعداد للتقديم.
- قدم للمراجعة.
تختلف أوقات مراجعة Apple، لكن المعدل النموذجي هو 24–48 ساعة.
الأتمتة باستخدام Xcode Cloud
التقديمات اليدوية عرضة للأخطاء وبطيئة. يحل Xcode Cloud هذه المشكلة باستخدام CI/CD:
- التكامل المستمر (CI): بناء واختبار التطبيقات تلقائيًا عند تحديث الفروع.
- التسليم المستمر (CD): توزيع التطبيقات عبر TestFlight أو متجر التطبيقات.
المزايا:
- متكامل تمامًا مع نظام Apple.
- اقتصادي التكلفة (يشمل عضوية المطور 25 ساعة بناء مجانية).
- يُدير تلقائيًا الشهادات والملفات والتواقيع.
دليل إعداد CI/CD العملي
الخطوة 1: توصيل مستودع GitHub
git remote add origin git@GitHub.com:movidevtalk/sampleDemoApp.git
git push -u origin main
الخطوة 2: حماية الفرع الرئيسي
تمكين قواعد حماية الفرع في GitHub لطلب طلبات السحب.
الخطوة 3: إنشاء سير عمل في Xcode Cloud
- افتح Xcode > المنتج > Xcode Cloud > إنشاء سير عمل.
- قم بتكوين المُحفزات:
- عند طلب السحب إلى
main: تشغيل سير العمل البناء + الاختبار. - عند الدمج إلى
release: تشغيل سير العمل الأرشيف + التوزيع.
- عند طلب السحب إلى
مثال على تكوين سير العمل (بأسلوب YAML لأغراض الوضوح)
workflow:
name: iOS Build & Test
trigger: pull_request_to_main
actions:
- build:
platform: iOS
scheme: SampleDemoApp
- test:
scheme: SampleDemoAppTests
الخطوة 4: إضافة سير عمل للتوزيع
workflow:
name: iOS Release Distribution
trigger: merge_to_release
actions:
- archive:
destination: app-store-connect
- distribute:
target: testflight
testers:
- internal: dev-team
- external: alpha-testers
الخطوة 5: TestFlight الداخلي والخارجي
- المختبرون الداخليون: يجب أن يكونوا موجودين في App Store Connect.
- المختبرون الخارجيون: يمكنهم استخدام روابط عامة.
بمجرد اجتياز المنشورات للمراجعة، يتلقى المختبرون وصولًا فوريًا.
استنتاجات قابلة للتطبيق
- أنشئ دائمًا معرفات تطبيقات فريدة في بداية مشروعك.
- يجب على كل مطور إنشاء شهادته الخاصة للتطوير — لا تشاركها.
- استخدم TestFlight للاختبار التجريبي — فهو يسجل الأجهزة تلقائيًا.
- أتمتة العمليات باستخدام Xcode Cloud لتقليل الأخطاء البشرية وتسريع الإصدارات.
- اتبع سير عمل قائمة على الفروع:
feature/*→ طلب سحب → بناء واختبار CIrelease/*→ دمج → أرشفة وتوزيع
أفكار أخيرة
إذا كنت مطور iOS مستقل، يمكنك التعامل مع عملية التقديم اليدوية بسهولة. لكن بمجرد أن ينمو فريقك أو يتوسع تطبيقك، يصبح Xcode Cloud ضرورة. إنه يوفر الوقت، ويقلل المخاطر، وضمان أن كل إصدار يكون متسقًا وموثوقًا.
مستقبل تطوير iOS هو التلقائي، وأخيرًا أعطتنا Apple الأدوات لجعل CI/CD سلسًا. إذا لم تجرب Xcode Cloud بعد، ابدأ بالساعات الـ25 المجانية للبناء المضمنة في اشتراكك كمطور Apple — لن تعود للخلف.