عیبیابی و پرسشگان «توزیع برنامه»
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
این صفحه راهنماییهای عیبیابی و پاسخ به پرسشهای متداول درباره توزیع و آزمایش برنامهها با App Distribution را ارائه میدهد.
توزیع برنامهها
از نکات زیر برای عیبیابی مشکلاتی که ممکن است هنگام توزیع برنامهها به آزمایشکنندگان با آنها مواجه شوید استفاده کنید.
بهدلیل نبود ایمیل تماس، برنامه توزیع نشد
هنگام بارگذاری برنامه، ممکن است با این خطا مواجه شوید:
«نتوانستیم ایمیل تماسی برای برنامه <app-id> پیدا کنیم. لطفاً برای راهاندازی، به
App Distribution در کنسول Firebase بروید.»
درصورت وجود، ایمیل تماسی در کنسول Firebase تنظیم کنید. اگر مشکل
برطرف نشد، با پشتیبانی Firebase تماس بگیرید.
هنگام تدارک برنامه خطایی روی داد (خطای ۴۰۰، ۴۰۹، یا ۵۰۰)
اگر درطول تدارک دیدن مکرراً با خطاهای ۴۰۰، ۴۰۹، یا ۵۰۰ مواجه میشوید،
با پشتیبانی Firebase تماس بگیرید. شماره پروژه Firebase و شناسه برنامه را به
پشتیبانی ارائه دهید.
IPA بارگذاری نشد
در زیر نمونهای از پاسخ شبکه مرورگر آورده شده است:
{"status":"IN_PROGRESS","message":"There was an error processing yourdistribution.EnsureyouareuploadingavalidIPAorAPKandtryagain."}
برای رفع این مشکل، این مراحل را دنبال کنید:
اندازه IPA را تأیید کنید. حداکثر حد اندازه فایل برای همه فایلهای دودویی
۲۰۴۸ مبیبایت است که کمی بیشتر از ۲ گیگابایت است.
اگر اندازه IPA در محدوده اندازه فایل است و قابلتولید مجدد است، این مراحل را دنبال کنید:
فایل Info.plist را بررسی کنید و تأیید کنید که آیا CFBundleDisplayName
حاوی جداکنندههای <array> است یا نه.
جداکنندههای <array> را بردارید و برنامهتان را دوباره بسازید. بارگذاری باید
موفقیتآمیز باشد.
اگر اندازه IPA از حد مجاز اندازه فایل بیشتر است، تغییرات لازم را برای کاهش اندازه فایل اعمال کنید.
اگر کاهش اندازه فایل IPA مشکل را برطرف نکرد، با
پشتیبانی Firebase تماس بگیرید و درباره استفاده از
Testflight سؤال کنید.
نصب و آزمایش برنامهها
از نکتههای زیر برای عیبیابی مشکلاتی که ممکن است آزمونگرانتان هنگام نصب و آزمایش برنامههایتان با آنها مواجه شوند استفاده کنید.
آزمایشکننده حساب Google ندارد
وقتی کاربری «حساب Google» ایجاد میکند، بهطور خودکار نشانی Gmail دریافت میکند.
اگر آزمایشکنندهای نشانی Google Workspace یا Gmail ندارد، یا اگر ترجیح میدهد
از نشانی ایمیل دیگری برای ورود به سیستم استفاده کند، از آزمایشکننده بخواهید نشانی ایمیل
غیرGmail را به حساب پیوند دهد و از آن ایمیل برای ورود به سیستم استفاده کند.
هنگام انتخاب ایمیل جایگزین، آزمایشکننده باید این دستورالعملها را دنبال کند:
از نشانی Gmail استفاده نکنید.
از نشانی ایمیلی که قبلاً با «حساب Google» دیگری پیوند شده است استفاده نکنید.
یادتان باشد که هنگام وارد شدن به سیستم با این نشانی ایمیل باید از گذرواژه «حساب Google» استفاده کنید.
آزمایشگر نمیتواند برنامهها یا نسخههای ساخت درست را ببیند
اگر آزمایشکننده دعوت ایمیلی را با نشانی ایمیلی غیراز نشانیای که دعوت به آن ارسال شده است پذیرفته باشد، ممکن است آزمایشکننده نتواند برنامهها یا نسخههای ساخت مناسب را ببیند.
ایمیلی که توسعهدهنده دعوتها را به آن ارسال میکند و به نسخههای ساخت جدید اضافه میکند (ایمیل الف) میتواند با ایمیلی که آزمایشکننده برای پذیرفتن دعوت استفاده میکند (ایمیل ب) متفاوت باشد. با این کار پیوندی در پشت صحنه ایجاد میشود. هرگاه «ایمیل الف»
به ساختهای جدید اضافه میشود، درواقع «ایمیل ب» است که دسترسی پیدا میکند.
اگر آزمایشکننده دعوت ایمیلی را با نشانی ایمیل دیگری پذیرفته است،
این مراحل را برای حل مشکل دنبال کنید:
آزمونگر را از بخش مشاهده همه آزمونگران در برگه آزمونگران و گروهها در صفحه App Distribution کنسول Firebase حذف کنید.
دعوتهای موجود برداشته میشود.
آزمایشکننده را دوباره برای آزمایش برنامهتان دعوت کنید. آزمایشکننده باید ایمیل دعوت دریافت کند.
مطمئن شوید که آزمایشکننده دعوت را با همان نشانی ایمیل میپذیرد.
آزمایشکننده اعلانهای ایمیلی را دریافت نمیکند
اگر یکی از موارد زیر رخ دهد، ممکن است آزمایشکنندگان اعلانهای ایمیلی را دریافت نکنند:
اعلانهای ایمیلی به پوشههای هرزنامه ارسال میشوند.
فیلترهای ایمیل تنظیم شد.
دعوت به یک حساب ایمیل ارسال شده است، اما آزمایشکننده با حساب ایمیل دیگری آن را پذیرفته است. آزمایشکننده ایمیلهای نسخه جدید را برای حساب ایمیلی که دعوت دراصل به آن ارسال شده است دریافت میکند.
آزمایشکننده قبلاً دعوت شده بود اما دعوت اولیه را نپذیرفته بود.
اگر آزمونگر به نسخههای پخش بعدی اضافه شود، App Distribution بهطور خودکار اعلانهای انتشار را برای آن آزمونگر ارسال نخواهد کرد زیرا آزمونگر دعوت اولیه را نپذیرفته است.
راهکار ۱
از آزمایشکننده بخواهید پوشه هرزنامه و هرگونه فیلتر ایمیلی را که در سرویس ایمیل خود تنظیم کرده است بررسی کند.
اگر آزمایشکننده اشتراک ایمیلها را لغو کرده است، از او بخواهید کارهای زیر را انجام دهد:
ایمیلی را که آزمایشکننده قبلاً از برنامه دریافت کرده است پیدا کنید.
روی مدیریت تنظیمات ایمیل در پایین کلیک کنید و روی مجاز کردن ایمیلها کلیک کنید تا دوباره مشترک شوید.
راهکار ۲
اگر آزمایشکننده به دریافت اعلانهای ایمیلی اهمیت نمیدهد و فقط میخواهد
بتواند دعوتهای برنامه را بپذیرد، میتواند دعوتهای معلقه برنامه را مستقیماً در کلیپ وب Firebase App Distribution مشاهده کند:
appdistribution.firebase.google.com.
راهکار ۳
آزمایشکننده را از بخش مشاهده همه آزمایشکنندگان در برگه آزمایشکنندگان و گروهها در صفحه App Distribution در کنسول Firebase حذف کنید.
این اقدام دعوتهای موجود را برمیدارد.
آزمایشکننده را دوباره برای آزمایش برنامهتان دعوت کنید. آزمایشکننده باید ایمیل دعوت دریافت کند. مطمئن شوید که آزمایشکننده دعوت را با همان نشانی ایمیلی که دعوت به آن ارسال شده است میپذیرد.
خطای «توسعهدهنده سازمانی غیرقابلاعتماد» هنگام تلاش برای اجرای برنامه آزمایشی
اگر قبلاز باز کردن برنامه، گواهی توسعهدهنده را در دستگاه آزمایشی تأیید نکرده باشید، خطای توسعهدهنده سازمانی غیرقابلاعتماد ظاهر میشود. در برنامه تنظیمات > صفحه نمایهها و مدیریت دستگاه، نام توسعهدهنده برنامه را انتخاب کنید و آن را تأیید کنید.
خطای «حالت توسعهدهنده لازم است» هنگام تلاش برای اجرای برنامه آزمایشی
خطای «حالت توسعهدهنده الزامی است» زمانی ظاهر میشود که سعی کنید برنامه iOS ارائهشده موقت را در iOS 16 یا نسخههای جدیدتر بدون فعال کردن «حالت توسعهدهنده» راهاندازی کنید.
برای فعال کردن «حالت توسعهدهنده» و رفع این خطا، این مراحل را دنبال کنید:
در iPhone، برنامه «تنظیمات» را باز کنید و سپس روی حریم خصوصی و امنیت تکضرب بزنید.
به پایین پیمایش کنید تا به «امنیت» برسید و روی حالت توسعهدهنده تکضرب بزنید.
روی لغزنده حالت توسعهدهنده تکضرب بزنید.
روی بازراهاندازی تکضرب بزنید.
پساز بازراهاندازی دستگاه، قفل آن را باز کنید. کادر گفتگوی «حالت توسعهدهنده» روشن شود؟
ظاهر میشود.
روی روشن کردن تکضرب بزنید. اکنون میتوانید برنامهتان را راهاندازی کنید و آزمایش را شروع کنید.
«دستگاه ثبت شد، همه چیز آماده است! وقتی برنامه برای آزمایش آماده شد، ایمیلی دریافت خواهید کرد»
اگر درحال نصب توزیع Ad Hoc هستید، این پیام زمانی ظاهر میشود که توسعهدهنده هنوز برنامهاش را برای اجرا در دستگاه آزمایشی شما پیکربندی نکرده باشد.
برای اینکه برنامه برای شما دردسترس قرار گیرد، توسعهدهنده باید
دستورالعملهای ثبت دستگاههای اضافی را تکمیل کند.
حساب Google به برنامه آزمایشی دسترسی ندارد
اگر «حساب Google» شما به برنامه آزمایشیای که قبلاً نصب کردهاید (یا دعوت آن را پذیرفتهاید) دسترسی ندارد، احتمالاً با «حساب Google» اشتباهی به سیستم وارد شدهاید. برنامههایی که به آنها دسترسی دارید با «حساب Google» شما مرتبط هستند که هنگام پذیرفتن دعوت برای آزمایش برنامه از آن استفاده کردید. با «حساب Google» که قبلاً برای پذیرفتن دعوت استفاده کردید به سیستم وارد شوید و دوباره امتحان کنید.
خطای ۴۰۳: «برای دسترسی، با سرپرستتان تماس بگیرید»
وقتی با خطای ۴۰۳ مواجه میشوید، یعنی حسابی که استفاده میکنید
اجازه نصب و آزمایش برنامهها را ندارد. دسترسی را سرپرست دامنه حسابتان در Google Workspace تعیین میکند.
اگر فکر میکنید باید اجازه نصب و آزمایش برنامهها را داشته باشید، از سرپرست حساب Google Workspace خود بخواهید تنظیمات حسابتان را تغییر دهد. سرپرستتان باید دستورالعملهای موجود در مدیریت دسترسی به سرویسهایی که بهطور جداگانه کنترل نمیشوند را دنبال کند.
اگر چند حساب دارید، با حساب دیگری به سیستم وارد شوید که
برای نصب و آزمایش برنامهها محدود نشده باشد.
فعال کردن هشدارهای درونبرنامه با App Distribution iOS SDK
از نکات زیر برای عیبیابی کردن مشکلات مربوط به
فعال کردن هشدارهای ساخت جدید درونبرنامه بااستفاده از App Distribution iOS SDK استفاده کنید.
آزمایشکننده هشدارهای درونبرنامه را دریافت نمیکند
اگر قبلاً App Distribution iOS SDK را در برنامهتان راهاندازی کردهاید و
آزمایشکنندگان شما هشدارهای درونبرنامه را دریافت نمیکنند، مطمئن شوید برنامهتان
نسخههای پخش جدید را واکشی میکند:
حالت اشکالزدایی را در برنامهتان فعال کنید. برای آشنایی با نحوه انجام این کار،
سند Google Analytics را ببینید.
برنامهتان را در شبیهساز اجرا کنید و رشته «[Firebase/AppDistribution]» را جستجو کنید.
بررسی کنید که آزمایشکننده به نسخه جدید دسترسی داشته باشد:
اگر شیء انتشار معتبری برگردانده شود، احتمالاً مشکلی در چرخه حیات View Controller وجود دارد که در آن کادر گفتگوی هشدار قبلاز ظاهر شدن View بار میشود.
اگر هیچ نسخه پخشی برگردانده نشد، ممکن است آزمایشکننده شما هنوز با نسخه پخش جدید مرتبط نشده باشد. در داشبورد App Distribution در کنسول Firebase، مطمئن شوید که آزمایشکننده شما در توزیع ساخت شما گنجانده شده است و در وضعیت پذیرفتهشده قرار دارد.
اگر آزمایشکننده شما هنوز بهروزرسانیها را دریافت نمیکند، از او بخواهید از
نکات زیر استفاده کند تا مطمئن شود دعوت آزمایش
برنامه شما را پذیرفته است و دستگاه آزمایشی خود را بهدرستی راهاندازی کرده است:
در دستگاه آزمایشی، به سیستم کلیپ وب Firebase App Distribution وارد شوید. یادتان باشد «حساب Google» را انتخاب کنید که اولینبار هنگام پذیرفتن دعوت برای آزمایش برنامه استفاده کردید.
مطمئن شوید که نسخه جدید برنامه در کلیپ وب دردسترس باشد.
از آزمایشکننده خواسته میشود پساز بستن برنامه دوباره به سیستم وارد شود
بهطور پیشفرض، آزمایشکنندگان شما فقط یکبار باید به سیستم «حساب Google» خود وارد شوند تا
هشدارهای ساخت جدید را فعال کنند و ساختهای جدید را نصب کنند. اگر پساز بستن و باز کردن مجدد برنامهتان، از آزمایشکنندگان خواسته میشود دوباره به سیستم وارد شوند، این نکات را دنبال کنید تا مطمئن شوید پیکربندی App Distribution بهدرستی راهاندازی شده است:
در بخش محدودیتهای کلید، مطمئن شوید که Firebase App Testers API در فهرست میاناهای برنامهسازی کاربردی مجاز گنجانده شده باشد.
اگر معمولاً UserDefaults را هنگام خروج از سیستم پاک میکنید، ممکن است وضعیت آزمایشکننده خود را پاک کنید. App Distribution پرچمی را ذخیره میکند که نشان میدهد
آیا آزمایشکننده شما قبلاً به سیستم برنامه وارد شده است یا نه. برای اطلاعات بیشتر، به
مخزن GitHub مراجعه کنید.
پرسشگان
آیا برای افزودن آزمایشگر به برنامهام محدودیتی وجود دارد؟
Firebase App Distribution محدودیتهای آزمایشکننده زیر را دارد:
افزودن حداکثر ۵۰۰ آزمایشگر به پروژه Firebase
حداکثر ۲۰۰ آزمایشگر به گروه App Distribution اضافه کنید
برای افزودن آزمایشکنندههای بیشتر، درخواست
افزایش حد بدون هزینه کنید.
آیا دعوتهای آزمایشکننده من منقضی میشوند؟
آزمونگران ۳۰ روز فرصت دارند تا دعوت آزمایش برنامه را قبلاز منقضی شدن آن بپذیرند.
وقتی ۵ روز به انقضای دعوت باقی مانده باشد، اعلان انقضا در کنسول Firebase در کنار آزمایشکننده در نسخه پخش ظاهر میشود. دعوت را میتوان با ارسال مجدد آن بااستفاده از منوِ کرکرهای در ردیف آزمایشکننده تمدید کرد.
چه زمانی نسخه پخش جدیدی برای بارگذاریهای iOS ایجاد میشود؟
پساز اینکه برنامه به حد انقضای ۱۵۰ روزه یا حد انتشار ۱۰۰۰ برنامه رسید یا از آن فراتر رفت، نسخه پخش از داشبورد App Distribution و برنامه تحت وب آزمونگر App Distribution برداشته میشود. اگر آزمونگرتان نسخه پخش را نصب کرده باشد، نسخه محلی برنامه همچنان اجرا میشود.
برای اینکه نسخه پخش برنامه مدت بیشتری دردسترس باشد، از یکی از توصیههای زیر استفاده کنید:
قبلاز اینکه انتشار برنامه منقضی شود یا از حد انتشار فراتر رود، IPA را بارگیری کنید و انتشار را از داشبورد App Distribution حذف کنید. سپس،
IPA را بهعنوان ساخت جدید در App Distribution دوباره بارگذاری کنید.
نسخه پخش را بارگیری کنید و آن را در Cloud Storage
بارگذاری کنید تا برای مدت طولانی بایگانی شود.
نسخههای پخش برنامه پساز ۱۵۰ روز منقضی میشوند
وقتی نسخهای از برنامهتان را در Firebase بارگذاری میکنید، این نسخه بهمدت ۱۵۰ روز از تاریخ بارگذاری در
App Distributionداشبورد
نشان داده میشود. پساز بارگذاری نسخه پخش، میتوانید آن را بین آزمایشکنندگان توزیع کنید تا نسخه پخش را از برنامه وب آزمایشکننده App Distribution در دستگاه آزمایشیشان نصب کنند.
وقتی ۳۰ روز به تاریخ انقضای نسخه پخش باقی مانده باشد، اعلان انقضای نسخه پخش برنامه در نسخه پخش شما در صفحه App Distribution کنسول Firebase و در برنامه وب آزمایشکننده App Distribution ظاهر میشود.
App Distribution حداکثر از ۱۰۰۰ نسخه پخش پشتیبانی میکند
App Distribution حداکثر ۱۰۰۰ نسخه پخش را برای هر برنامه مجاز میداند. وقتی برنامهتان به حد مجاز ۱۰۰۰ نسخه پخش برنامه برسد، App Distribution بهطور خودکار قدیمیترین نسخههای پخش را که فراتر از حد مجاز هستند حذف میکند.
اگر میخواهید نسخههای پخش برنامهتان را بهصورت دستی مدیریت کنید، ازApp Distribution
REST API برای
فهرست کردن
و
حذف کردن
نسخههای پخش برنامه بهصورت انبوه استفاده کنید.
نمایه Firebase نمایه پیکربندی است که به App Distribution
اجازه میدهد:
دستگاه آزمایشی را با جمعآوری شناسه یکتای دستگاه (UDID) ثبت کنید. اگر درحال آزمایش توزیع Ad Hoc هستید، Firebase ایمیلی به توسعهدهنده نرمافزار ارسال میکند که حاوی UDID دستگاه آزمایشی و دستورالعملهایی درباره نحوه گنجاندن دستگاه در نمایه تدارک برنامه است تا بتوان ساخت را در دستگاهتان آزمایش کرد.
کلیپ وب Firebase App Distribution را در صفحه اصلی دستگاهتان نصب کنید. کلیپ وب به شما امکان میدهد همه برنامههای آزمایشیتان را در یک مکان نصب کنید و به آنها دسترسی داشته باشید. ساختهای جدیدی که برای آزمایش دعوت شدهاید
بهطور خودکار به کلیپ وب اضافه میشوند.
برای دریافت راهنمایی درباره نصب نمایههای پیکربندی در دستگاه iOS، به
اسناد Apple مراجعه کنید.
چگونه میتوانم به برنامههای آزمایشی که در دستگاه نصب کردهام دسترسی داشته باشم؟
اگر آزمایشکننده هستید، میتوانید بااستفاده از
Firebase App Distribution کلیپ وب به همه برنامههای آزمایشیتان دسترسی داشته باشید. این کلیپ وب
هنگام نصب نمایه Firebase بهطور خودکار به صفحه اصلی دستگاه آزمایشیتان اضافه میشود. اگر درحال آزمایش توزیع Ad Hoc هستید، باید ابتدا نمایه را نصب کنید تا بتوانید برنامه را آزمایش کنید.
اگر درحال آزمایش
توزیع Enterprise هستید، میتوانید نمایه را بهصورت دستی نصب کنید:
اگر قبلاً این کار را نکردهاید، به سیستم Google وارد شوید و دعوت را بپذیرید.
در بخش برنامههای آزمایشی، برنامه موردنظرتان را برای آزمایش انتخاب کنید.
در بالا سمت چپ صفحه برنامه، روی mobile_screen_share تکضرب بزنید.
دستورالعملهای نمایشدادهشده را برای نصب نمایه Firebase دنبال کنید.
چگونه حساب آزمایشکننده خودم را حذف کنم؟
برای حذف کردن حساب آزمایشکننده App Distribution و دادههای مرتبط با آن،
این مراحل را بهترتیب دنبال کنید:
در بالا سمت چپ، روی settings (مدیریت حساب) کلیک کنید
روی حذف حساب تکضرب بزنید.
اختیاری: در
اجازههای حساب Google،
دسترسی Firebase App Distribution را لغو کنید. توجه داشته باشید که لغو دسترسی
بدون حذف کردن حساب App Distributionباعث حذف
حساب یا دادههای آزمونگر شما نمیشود.
تاریخ آخرین بهروزرسانی 2026-10-16 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2026-10-16 بهوقت ساعت هماهنگ جهانی."],[],[]]