كيفية توقيع تطبيقات Flutter لنظام التشغيل iOS تلقائيًا بدون نظام Mac

لن يكون مفاجئًا لأي مطور لنظام iOS أن هناك حاجة لتوقيع تطبيقات iOS قبل أن يتم تثبيتها على الأجهزة الفعلية وشحنها إلى المستخدمين النهائيين عبر متجر التطبيقات. كل ما تحتاج إليه هو حساب مطور Apple وشهادة توقيع صالحة وملف تعريف توفير مطابق ... و Mac لإنشاء هذه الملفات. يبدو وكأنه الكثير من المتاعب؟ بناءً على عدد الأسئلة المتعلقة بتوقيع كود iOS على Stackoverflow ، يتصارع العديد من المطورين معها. نحن نتفهم أن إعداد توقيع الكود يمكن أن يكون صداعًا ، خاصةً عندما تحاول تشغيله في بيئة CI / CD ، وحتى أكثر من ذلك عندما تقوم بالتطوير لأنظمة تشغيل متعددة ، كما يمكنك فعل ذلك باستخدام Flutter SDK ولا تملك جهاز Mac.

ولكن مهلا ، لدينا أخبار سارة لجميع مطوري Flutter! جعلت Codemagic عمل توقيع الكود بالكامل أسهل من أي وقت مضى من خلال التخلص من بعض الخطوات المطلوبة في عملية توقيع كود iOS التقليدية.

تقديم بديل لتوقيع كود iOS التقليدي

ماذا لو أخبرناك أنك لم تعد بحاجة إلى جهاز Mac لتتمكن من توقيع تطبيق Flutter لنظام التشغيل iOS؟ وماذا لو لم تكن بحاجة للقلق بشأن ملفات التوقيع ويمكن أن تتولى Codemagic العناية بكل ذلك لك دون أي تكلفة؟ هذا بالضبط ما نقوله: تقدم Codemagic توقيعًا أوتوماتيكيًا للرمز لتطبيقات Flutter لنظام iOS من خلال إنشاء شهادة التوقيع وملف تعريف التوفير داخل التطبيق ، مما يتيح لك توقيع وشحن التطبيق إلى App Store كجزء من عملية الإنشاء. تابع القراءة للحصول على نظرة عامة على أساسيات توقيع الشفرة وميزة التوقيع التلقائي الجديدة في Codemagic.

فهم أساسيات توقيع كود iOS

قبل أن نصف كيف يقوم Codemagic بسحره من خلال توقيع تطبيق Flutter لنظام iOS ، دعنا نتعرف على ما هو مطلوب عادة لتوقيع كود iOS.

  • حساب المطور أبل. مطلوب التسجيل في برنامج Apple Developer لاستخدام TestFlight للاختبار التجريبي أو تحرير التطبيق للمستخدمين النهائيين في متجر التطبيقات. يلزم أيضًا أن تكون قادرًا على طلب الشهادات وتنزيل ملفات تخصيص التوفير. ومع ذلك ، إذا كنت تبحث فقط عن طريقة للحصول على بنية يمكن تثبيتها على جهاز حقيقي ، فيمكنك اتباع هذا البرنامج التعليمي حول كيفية نشر تطبيقك على iPhone دون الاشتراك في برنامج Apple Developer (لكنك بحاجة إلى ماك لذلك).
  • شهادة التوقيع. الشهادة هي زوج مفاتيح عام / خاص يمكّن من تحديد من قام بتطوير الكود. هناك شهادة تطوير شخصية للرمز الذي يوقع التطبيق أثناء عملية التطوير وشهادة توزيع App Store و Ad Hoc (مشتركة) التي يتم استخدامها عندما تقوم بالتوقيع على التطبيق للتوزيع.
  • الملف المقدم. يحتوي ملف تعريف التوفير على معلومات حول معرف التطبيق ، والأجهزة التي يمكن تثبيت التطبيق عليها والشهادات التي يمكن استخدامها لتوقيع التطبيق. تمامًا كما هو الحال مع الشهادات ، هناك ملف تخصيص توفير التطوير لتوقيع الرمز للتطبيق أثناء عملية التطوير وملفات تخصيص توفير التوزيع (Ad Hoc أو App Store) للتوزيع. وبشكل أكثر تحديدًا ، يمكن استخدام ملف تعريف توزيع Ad Hoc لتوزيع التطبيق على المختبرين غير Testflight (على سبيل المثال عبر HockeyApp) ، بينما تحتاج إلى استخدام ملف تعريف توزيع App Store للاختبار على TestFlight أو الإفراج عن App Store. على عكس ملفات تخصيص التوفير الأخرى ، فإن ملف تعريف توزيع App Store غير مرتبط بأجهزة معينة.
  • ماك تحتاج إلى Mac لطلب الشهادة أولاً من Apple والإصدارات الأحدث لإنشاء ملف الشهادة الذي يمكن تحميله على أنظمة الجهات الخارجية. لا يعد نظام التشغيل Mac مطلوبًا بالفعل عند قيامك بتطوير تطبيقات Flutter ، لذا قد يتضح أن هذا الجزء من عملية توقيع الشفرة يمثل مشكلة عندما لا يكون لديك جهاز Mac يمكنك استخدامه.

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

إذا كنت ترغب في قراءة المزيد حول هذا الموضوع ، يمكنك إلقاء نظرة على دليل المبتدئين لملفات تخصيص إدارة iOS.

كيف يعمل مع Codemagic

من خلال التوقيع التلقائي على الكود ، يمكنك جعل Codemagic يقوم بإنشاء شهادة توقيع وملف تعريف توفير مطابق لك واستخدامها لتوقيع الكود. وفقًا لنوع ملف تخصيص التوفير المحدد ، ستنشئ Codemagic شهادة تطوير أو توزيع وتطوير ، أو ملف تخصيص توفير Ad Hoc أو App Store. وبهذه الطريقة ، يمكنك الحصول على تصميمات موقعة يمكن تثبيتها على أجهزة حقيقية وتوزيعها على متجر التطبيقات - دون امتلاك جهاز Mac.

متطلبات استخدام توقيع الكود الأوتوماتيكي

قبل إعداد توقيع الشفرة التلقائي ، دعنا نتفوق على ما هو مطلوب لاستخدام ميزة توقيع الشفرة التلقائية في Codemagic.

  • حساب المطور أبل. لا تزال بحاجة إلى أن تكون عضوًا في Apple Developer Program لتتمكن من توقيع الرمز وتوزيع تطبيقاتك. سيتطلب Codemagic اسم مستخدم وكلمة مرور مدخل مطور Apple الخاص بك لإنشاء الشهادات وملفات تعريف التوفير لك. نوصي بإضافة مستخدم جديد إلى فريقك واستخدام هذا الحساب مع ميزة توقيع الكود التلقائي في Codemagic.
  • الأجهزة المسجلة. ستقوم Codemagic بإنشاء ملف تعريف للتوفير يحتوي على جميع الأجهزة التي تم تسجيلها في حساب مطور Apple الخاص بك. قبل كل بناء ، سيتحقق Codemagic من أنه قد تمت إضافة أجهزة جديدة وسيتم تحديث ملف التعريف إذا لزم الأمر.

قم بإعداد توقيع الكود التلقائي

يعد إعداد توقيع الكود التلقائي على Codemagic سريعًا وسهلاً.

  1. انتقل إلى إعدادات التطبيق الخاص بك.
  2. تأكد من تحديد وضع الإصدار في إعدادات البناء.

3. في قسم النشر ، انقر فوق توقيع رمز iOS لتوسيع هذه الخطوة.

4. حدد تلقائي كطريقة توقيع الكود.

5. أدخل معرف Apple الخاص بك (اسم مستخدم بوابة مطور Apple) وكلمة مرور مدخل مطور Apple.

6. ثم اختر نوع ملف تعريف التوفير.

7. يمكنك أيضًا إدخال معرف حزمة التطبيق (اختياري). بشكل افتراضي ، يكتشف Codemagic ذلك تلقائيًا من مستودعك.

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

هذا هو. ستتلقى الآن تصميمات موقعة لسير العمل في متناول اليد. سيكون ملف .ipa متاحًا للتنزيل في قسم الأعمال الفنية من نظرة عامة على البنية ، وسيتم إرساله أيضًا على بريدك الإلكتروني أو قناة سلاك ، إذا كنت قد قمت بنشرها لتكوينه. كخطوة تالية ، يمكنك تهيئة النشر إلى App Store Connect لتوزيع التطبيق الذي تم توقيعه على المختبرين أو إرساله للمراجعة.

يتم إحتوائه

على الرغم من أنك لا تحتاج بشدة إلى توقيع التطبيق أثناء التطوير ، فليس هناك هروب من توقيع الشفرة والانضمام إلى برنامج Apple Developer عندما كنت تخطط لنشر تطبيقك للجمهور عبر App Store. نعتقد أنه من خلال القضاء على الحاجة إلى نظام Mac لأغراض توقيع الشفرات ، فإنه يتيح لعدد أكبر من الأشخاص تسليم تطبيقهم إلى المستخدمين النهائيين المحتملين.

في النهاية ، فإن ميزة التوقيع التلقائي للرمز Codemagic ليست مخصصة للأشخاص الذين ليس لديهم جهاز Mac فقط: إنها ببساطة تزيل الألم عن العملية برمتها من خلال أتمتة جانب آخر من جوانب تطوير التطبيق. ومع ذلك ، يمكن لأولئك الذين يرغبون في البقاء في السيطرة الكاملة على توقيع الكود الاستمرار في استخدام خيار توقيع الكود اليدوي وتحميل ملفات التوقيع يدويًا.