loader

نحوه تولید نسخه iOS  و بارگذاری آن در AppStore با استفاده از Xamarin Forms 

 


 نکاتی در مورد خروجی IPA:

توضیحات زیر بر مبنای استفاده از Xamarin Forms  بوده و ممکن است برخی موارد برای کسانی که از Mac استفاده میکنند و با Swift کار می‌کنند متفاوت باشد.

فایل IPA چیست؟

در iOS فایل‌های application به صورت IPA و در اندروید با پسوند APK هستند. هر دونوع این فایلها zip بوده ولی تفاوتشان در این است که به خاطر محدودیت‌های دستگاه‌های Apple فایل IPA مستقیماً روی آنها نصب نمی‌شود و باید بر روی مارکت انتشار یابد.

 

انواع خروجی فایل IPA عبارتند از:

 

 

چطور باید از برنامه فایل IPA بگیریم؟

در اینجا  تمامی مراحل انجام این کار توضیح داده شده و می‌تونید قدم به قدم باهاش پیش برید تا یک نسخه iOS منتشر کنید، فقط یک سری نکته وجود داره که ما برای شما شرح میدیم تا بهتر و سریعتر بتونید به نتیجه برسید.

 

 

برای ساخت certificate  از دو روش میشه اقدام کرد که ما روش دوم رو توصیه می کنیم. 

اولین روش:

ایجاد فایل CSR، داشتن Bundle ID و گرفتن خروجی iOS توسط xCode کارهایی هستند که باید قبل از اینکه application را در AppStore منتشر کنید انجام داده باشید. فایل CSR به این صورت ساخته می شود:

برنامه Keychain Access را در Mac باز کنید. از Certificate Assistant گزینه Request a Certificate را انتخاب کرده، آدرس ایمیل و نام را وارد کنید، save to disk  را انتخاب کرده و continue بزنید. فایل را در جایی ذخیره کنید.CSR شما ساخته شد.

هر دفعه بخواهید app جدیدی را انتشار دهید از همین فایل استفاده کنید یعنی نیازی به ساخت مجدد فایل CSR نیست.

Developer Account را ایجاد کرده، وارد آن شوید.

در قسمت Development Certificate، روی Production Certificate بزنید و Create Certificate را انتخاب کنید.

Create CSR File را انتخاب و Continue بزنید.

فایل CSR را اینجا آپلود کنید.

در صفحه بعدی قسمت Download وجود دارد. باید فایل را دانلود و در جایی ذخیره کنید و سپس Done بزنید.

روش دوم:

xcode  را باز کنید.

از منو به آدرس Xcode>> Preferences  بروید

با apple Id Developer  خودتون sign in  کنید

در پایین پنجره یک علامت + وجود دارد بر روی آن زده و یک certificate  جدید بسازید.

این certificate را میتوانید در سایت apple هم مشاهده کنید. 

با استفاده از این certificate  میتوانید provisioning profile های خود را بسازید.

 

نکته ای در ساخت Provisioning Profile:

این مورد توی infoplist در پروژه iOS در VisualStudio  باید با نام AppID که توی Apple Developer site  ایجاد کردیم و باهاش Provision Profile  رو ساختیم یکی باشد.

اگر درست نباشد provision profile  که نیاز داریم برای خروجی IPA رو نخواهیم دید:

 <key>CFBundleIdentifier</key>
    <string>Your App ID</string>

 

 

مشکل در زمان اتصال VisualStudio با Mac :

خطای: You must agree to the terms of the Xcode software license agreement. Launch Xcode again and agree to the software license agreement, or choose a different Xcode

برای رفع این مشکل:

Terminal را باز کرده

این کد sudo xcodebuild -license accept -license رو وارد کنید

 

 

خطای Xcode Not In The Application Loader: 

اگر XCode  رو نصب کردید ولی نمیتونستید توی Mac Applications Folder پیداش کنید که البته در این صورت Visual Studio  هم نمی‌تونه به XCode دسترسی داشته باشه دو حالت داریم:

 

 

مشکل دانلود Xcode  از AppStore:
   میدانید که ما توسط بسیاری از شرکت های بزرگ مثل Google و حتی Apple  تحریم هستیم و ممکنه که دسترسی ما رو به AppStore  ببندند، در این وضعیت برای دانلود Xcode  چه میشه کرد؟
   میتوانید با استفاده از این لینک و بدون فیلتر شکن به طور مستقیم Xcode  رو دانلود کنید و نصب کنید.

 

 


مشکل Run شدن iOS Simulator: 

(Debug  اجرا می‌شود ولی iOS Simulator  نمایش داده نمیشود)

در صورتی که iOS Simulator  بالا نیامد و نمیتونستید آن را ببینید firewall را خاموش کنید چون به Mac اجازه نمیدهد که Simulator  را روی ویندوز اجرا کند.

منوی tools>> option >. xamarin >. ios  را هم بررسی کنید که remote simulator to windows  تیکش خورده باشه.

توجه داشته باشید که Mac  و هر چیزی که با Apple سرو کار داره همیشه باید به روز باشد مثلاً ممکن است در یک ورژن قدیمی تر Visual Studio نتوانید آیکن های نسخه جدید iOS را set کنید یا provisioning profile ها رو از Mac دریافت کنید.