با استفاده از Firebase CLI، برنامه‌های Android را بین آزمایش‌کنندگان توزیع کنید

این راهنما نحوه توزیع Android App Bundles (AAB) را با استفاده از Firebase CLI بین آزمایش‌کنندگان توضیح می‌دهد. ابزار CLI به شما این امکان را می‌دهد که آزمایش‌کننده‌ها و یادداشت‌های انتشار را برای یک ساخت مشخص کنید، سپس بیلد را بر اساس آن توزیع کنید.

توزیع برنامه با سرویس اشتراک‌گذاری برنامه داخلی Google Play ادغام می‌شود تا AAB‌هایی را که آپلود می‌کنید پردازش کند و APK‌هایی را که برای پیکربندی‌های دستگاه آزمایش‌کنندگان شما بهینه‌سازی شده‌اند ارائه کند. توزیع AAB به شما امکان می دهد کارهای زیر را انجام دهید:

  • فایل‌های APK بهینه‌سازی شده (که توسط Google Play ارائه می‌شود) را اجرا کنید که برای دستگاه‌های آزمایش‌کنندگان شما بهینه‌سازی شده‌اند.

  • مسائل مربوط به دستگاه را کشف و اشکال زدایی کنید.

  • ویژگی‌های بسته نرم‌افزار مانند Play Feature Delivery و Play Asset Delivery را آزمایش کنید.

  • حجم بارگیری‌ها را برای آزمایش‌کنندگان خود کاهش دهید.

مجوزهای مورد نیاز

برای آپلود AAB در App Distribution، باید برنامه Firebase خود را به برنامه‌ای در Google Play پیوند دهید . برای انجام این اقدامات باید سطح دسترسی لازم را داشته باشید.

اگر دسترسی Firebase لازم را ندارید، می‌توانید از مالک پروژه Firebase بخواهید که از طریق تنظیمات IAM کنسول Firebase نقش قابل اجرا را به شما اختصاص دهد. اگر در مورد دسترسی به پروژه Firebase خود، از جمله پیدا کردن یا اختصاص مالک، سؤالی دارید، سؤالات متداول "مجوزها و دسترسی به پروژه های Firebase" را مرور کنید.

جدول زیر برای پیوند یک برنامه Firebase به یک برنامه در Google Play و همچنین آپلود AAB ها کاربرد دارد.

اکشن در کنسول Firebase مجوز IAM مورد نیاز است نقش(های) IAM که به طور پیش فرض شامل مجوزهای مورد نیاز است نقش(های) مورد نیاز اضافی
یک برنامه Firebase را به یک برنامه در Google Play پیوند دهید firebase.playLinks.update یکی از نقش های زیر: دسترسی به حساب توسعه دهنده Google Play به عنوان Admin
AAB ها را در App Distribution آپلود کنید firebaseappdistro.releases.update یکی از نقش های زیر: ––

قبل از اینکه شروع کنی

  1. اگر قبلاً این کار را نکرده‌اید، Firebase را به پروژه Android خود اضافه کنید . در پایان این گردش کار، یک برنامه Android Firebase در پروژه Firebase خود خواهید داشت.

    اگر از محصولات Firebase دیگری استفاده نمی کنید، فقط باید یک پروژه ایجاد کنید و برنامه خود را ثبت کنید. اگر تصمیم به استفاده از محصولات اضافی دارید، مطمئن شوید که تمام مراحل افزودن Firebase به پروژه Android خود را کامل کرده اید.

  2. برای ایجاد پیوند Firebase به Google Play و آپلود AAB، مطمئن شوید که برنامه شما شرایط زیر را دارد:

    • برنامه در Google Play و برنامه Firebase Android هر دو با استفاده از یک نام بسته ثبت شده اند.

    • برنامه در Google Play در داشبورد برنامه راه‌اندازی می‌شود و در یکی از مسیرهای Google Play (تست داخلی، آزمایش بسته، آزمایش باز یا تولید) توزیع می‌شود.

    • بررسی اپلیکیشن در گوگل پلی کامل شد و اپلیکیشن منتشر شد. اگر ستون وضعیت برنامه یکی از وضعیت‌های زیر را نمایش دهد، برنامه شما منتشر می‌شود: آزمایش داخلی (نه آزمایش داخلی پیش‌نویس)، آزمایش بسته، آزمایش باز یا تولید.

  3. برنامه Firebase Android خود را به حساب توسعه دهنده Google Play خود پیوند دهید:

    1. در کنسول Firebase، به قسمت خود بروید تنظیمات پروژه ، سپس برگه Integrations را انتخاب کنید.

    2. در کارت Google Play ، روی پیوند کلیک کنید.
      اگر قبلاً پیوندهایی به Google Play دارید، به جای آن روی Manage کلیک کنید.

    3. دستورالعمل‌های روی صفحه را دنبال کنید تا ادغام توزیع برنامه را فعال کنید و برنامه‌های Firebase Android را انتخاب کنید تا به Google Play پیوند داده شوند.

    درباره پیوند دادن به Google Play بیشتر بیاموزید.

مرحله 1. برنامه خود را بسازید

وقتی آماده توزیع نسخه پیش‌انتشاری برنامه‌تان برای آزمایش‌کنندگان هستید، AAB خود را بسازید (برای دستورالعمل‌ها به مستندات Android Studio مراجعه کنید).

مرحله 2. برنامه خود را بین آزمایش کنندگان توزیع کنید

برای توزیع برنامه خود بین آزمایشگران، فایل برنامه خود را با استفاده از Firebase CLI آپلود کنید:

  1. آخرین نسخه Firebase CLI را نصب یا به روز کنید (توصیه می کنیم باینری مستقل را برای CLI مخصوص سیستم عامل خود دانلود کنید). مطمئن شوید که وارد شوید و تست کنید که می توانید به پروژه های خود دسترسی داشته باشید.
  2. در صفحه توزیع برنامه کنسول Firebase، برنامه‌ای را که می‌خواهید توزیع کنید انتخاب کنید، سپس روی شروع به کار کلیک کنید.
  3. دستور appdistribution:distribute اجرا کنید تا برنامه خود را آپلود کرده و بین آزمایش کنندگان توزیع کنید. برای پیکربندی توزیع از پارامترهای زیر استفاده کنید:

    appdistribution: توزیع گزینه ها
    --app

    مورد نیاز : شناسه برنامه Firebase برنامه شما. می‌توانید شناسه برنامه را در کنسول Firebase، در صفحه تنظیمات عمومی پیدا کنید.

    --app 1:1234567890:android:0a1b2c3d4e5f67890
    --token

    نشانه تازه‌سازی که هنگام احراز هویت محیط CI خود با Firebase CLI چاپ می‌شود (برای اطلاعات بیشتر، استفاده از CLI با سیستم‌های CI را بخوانید).

    --token "$FIREBASE_TOKEN"
    --release-notes
    --release-notes-file

    یادداشت های انتشار برای این ساخت.

    می توانید یادداشت های انتشار را مستقیماً مشخص کنید:

    --release-notes "Text of release notes"

    یا مسیر یک فایل متنی ساده را مشخص کنید:

    --release-notes-file "/path/to/release-notes.txt"
    --testers
    --testers-file

    آدرس‌های ایمیل آزمایش‌کنندگانی که می‌خواهید دعوت کنید.

    می‌توانید آزمایش‌کننده‌ها را به‌عنوان فهرستی از آدرس‌های ایمیل جدا شده با کاما مشخص کنید:

    --testers "ali@example.com, bri@example.com, cal@example.com"

    یا می‌توانید مسیر یک فایل متنی ساده حاوی فهرستی از آدرس‌های ایمیل جدا شده با کاما را مشخص کنید:

    --testers-file "/path/to/testers.txt"
    --groups
    --groups-file

    گروه‌های آزمایش‌کننده‌ای که می‌خواهید دعوت کنید (به مدیریت آزمایش‌کنندگان مراجعه کنید). گروه ها با استفاده از آن مشخص می شوند نام مستعار گروهی ، که می توانید آن را در کنسول Firebase جستجو کنید.

    شما می توانید گروه ها را به عنوان یک لیست جدا شده با کاما مشخص کنید:

    --groups "qa-team, trusted-testers"

    یا می‌توانید مسیر یک فایل متنی ساده حاوی فهرستی از نام‌های گروه جدا شده با کاما را مشخص کنید:

    --groups-file "/path/to/groups.txt"
    --debug

    پرچمی که می‌توانید برای چاپ خروجی گزارش پرمخاطب اضافه کنید.

    --test-devices
    --test-devices-file

    انواع توزیع زیر بخشی از ویژگی آزمایش کننده خودکار بتا هستند.

    دستگاه‌های آزمایشی که می‌خواهید ساخت‌ها را در آنها توزیع کنید (به تست‌های خودکار مراجعه کنید).

    می‌توانید آزمایش‌کننده‌ها را به‌عنوان فهرستی از آدرس‌های ایمیل جدا شده با کاما مشخص کنید:

    --test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"

    یا، می‌توانید مسیر یک فایل متنی ساده حاوی فهرستی از دستگاه‌های آزمایشی جدا شده با نقطه ویرگول را مشخص کنید:

    --test-devices-file: "/path/to/test-devices.txt"
    --test-username

    نام کاربری برای ورود خودکار که در طول تست های خودکار استفاده می شود.

    --test-password
    --test-password-file

    رمز عبور برای ورود خودکار که در طول آزمایشات خودکار استفاده می شود.

    یا می توانید مسیر یک فایل متنی ساده حاوی رمز عبور را مشخص کنید:

    --test-password-file: "/path/to/test-password.txt"
    --test-username-resource

    نام منبع برای فیلد نام کاربری برای ورود خودکار برای استفاده در آزمایش‌های خودکار .

    --test-password-resource

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

    --test-non-blocking

    تست های خودکار را به صورت ناهمزمان اجرا کنید. برای دریافت نتایج تست خودکار به کنسول Firebase مراجعه کنید.

    مثلا:

    firebase appdistribution:distribute test.aab  \
        --app 1:1234567890:android:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt
    

    Firebase CLI پیوندهای زیر را پس از آپلود انتشار خروجی می دهد. این پیوندها به شما کمک می‌کنند فایل‌های باینری را مدیریت کنید و اطمینان حاصل کنید که آزمایش‌کنندگان و سایر توسعه‌دهندگان نسخه مناسبی دارند:

    • firebase_console_uri - پیوندی به کنسول Firebase که یک نسخه را نمایش می‌دهد. می توانید این پیوند را با سایر توسعه دهندگان در سازمان خود به اشتراک بگذارید.
    • testing_uri - پیوندی به نسخه در تجربه آزمایش‌کننده (برنامه بومی Android) که به آزمایش‌کنندگان اجازه می‌دهد یادداشت‌های انتشار را مشاهده کرده و برنامه را روی دستگاه خود نصب کنند. آزمایش‌کننده برای استفاده از پیوند نیاز به دسترسی به انتشار دارد.
    • binary_download_uri - پیوند امضا شده ای که مستقیماً برنامه باینری (فایل APK یا AAB) را دانلود و نصب می کند. لینک بعد از یک ساعت منقضی می شود.

    آزمایش کننده ها و گروه ها را مدیریت کنید

    علاوه بر توزیع نسخه‌ها، می‌توانید از appdistribution:testers:add و appdistribution:testers:remove برای دعوت از آزمایش‌کنندگان جدید یا حذف آزمایش‌کنندگان موجود از پروژه Firebase استفاده کنید.

    هنگامی که یک آزمایش‌کننده به پروژه Firebase شما اضافه شد، می‌توانید آنها را به نسخه‌های جداگانه اضافه کنید. پس از حذف یک آزمایش‌کننده، دیگر به نسخه‌های موجود در پروژه شما دسترسی نخواهند داشت. توجه داشته باشید که آزمایش‌کنندگانی که اخیراً حذف شده‌اند همچنان می‌توانند برای مدتی به نسخه‌های شما دسترسی داشته باشند.

    مثلا:

    firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
    

    ایمیل‌های آزمایش‌کننده باید با فاصله از هم جدا شوند. همچنین می‌توانید آزمایش‌کنندگان را با استفاده از --file /path/to/testers.txt مشخص کنید.

    اگر تعداد آزمایش‌کننده‌های زیادی دارید، باید از گروه‌ها استفاده کنید: می‌توانید از appdistribution:group:create و appdistribution:group:delete برای ایجاد یا حذف گروه‌ها در پروژه Firebase خود استفاده کنید.

    برای تعیین گروهی برای دستورات appdistribution:testers:add و appdistribution:testers:remove --group-alias استفاده کنید.

    مثلا:

    firebase appdistribution:group:create "QA team" qa-team
    
    firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:group:delete qa-team
    

هنگامی که ساخت خود را توزیع کردید، به مدت 150 روز (پنج ماه) در داشبورد توزیع برنامه کنسول Firebase در دسترس قرار می گیرد. وقتی ساخت 30 روز از انقضا می‌گذرد، یک اخطار انقضا هم در کنسول و هم در فهرست ساخت‌های آزمایش‌کننده شما در دستگاه آزمایشی ظاهر می‌شود.

آزمایش‌کنندگانی که برای آزمایش برنامه دعوت نشده‌اند، دعوت‌نامه‌های ایمیلی را برای شروع دریافت می‌کنند، و آزمایش‌کننده‌های موجود اعلان‌های ایمیلی مبنی بر آماده بودن ساخت جدید برای آزمایش دریافت می‌کنند ( راهنمای راه‌اندازی آزمایش‌کننده را برای دستورالعمل‌های نحوه نصب برنامه آزمایشی بخوانید). می‌توانید وضعیت هر آزمایش‌کننده را کنترل کنید - آیا دعوت‌نامه را پذیرفته‌اند و آیا برنامه را دانلود کرده‌اند یا خیر - در کنسول Firebase.

آزمایش‌کننده‌ها 30 روز فرصت دارند تا قبل از انقضا، دعوتنامه را برای آزمایش برنامه بپذیرند. وقتی دعوتنامه 5 روز از انقضای آن می گذرد، یک اخطار انقضا در کنسول Firebase در کنار آزمایش کننده در یک نسخه ظاهر می شود. یک دعوت نامه را می توان با ارسال مجدد آن با استفاده از منوی کشویی در ردیف آزمایشگر تمدید کرد.

مراحل بعدی