Firebase App Distribution: asosiy tushunchalar, APK va IPA tarqatish va sozlash

Muallif: IT Sectr Nashr etilgan: 2026-04-29 O'qish vaqti: 8 daq

Firebase App Distribution — bu mobil ilovalarning dastlabki qurilmalarini testerlar va ichki jamoalar orasida tarqatish uchun Google xizmati bo'lib, ularni ilova do'konlarida chop etish shart emas. App Distribution APK va IPA yuklash, tester guruhlarini boshqarish va fikr-mulohaza toplash uchun yagona interfeysni taqdim etadi. Firebase Documentation, 2026 ma'lumotlariga ko'ra, xizmat testerlarni elektron pochta va push bildirishnomalari orqali yangi versiyalar haqida avtomatik xabardor qiladi, Fastlane integratsiyasi esa qurilmalarni CI/CD quvuridan to'g'ridan-to'g'ri qo'lda harakatlarsiz chop etish imkonini beradi. App Distribution Android (AAB/APK) va iOS (IPA) ni, shu jumladan ad-hoc va enterprise tarqatishni qo'llab-quvvatlaydi.

Asosiy nuqtalar

  • App Distribution — ilovalarning beta versiyalarini Google Play va App Store'da chop etmasdan testerlar orasida tarqatish uchun Firebase xizmati.
  • Tester guruhlari — rollar, loyihalar yoki test bosqichlari bo'yicha guruhlar yaratish bilan moslashuvchan kirish boshqaruvi tizimi.
  • Avtomatik bildirishnomalar — testerlar har bir yangi qurilmada o'rnatish havolasi bilan elektron pochta va push bildirishnomalarini oladi.
  • Fastlane + Gradle — har bir commit yoki pull requestda qurilmalarni avtomatik chop etish uchun CI/CD tizimlari bilan to'liq integratsiya.
  • Fikr-mulohaza — testerlar o'rnatilgan interfeys yoki Firebase Crashlytics orqali ekran tasvirlari, jurnallar va sharhlarni yuborishi mumkin.

Firebase App Distribution nima

Firebase App Distribution — bu mobil ilovalarning oldindan chop etilgan versiyalarini testerlar va manfaatdor tomonlar orasida tarqatish uchun Google xizmati. Ilova do'konlarida chop etishdan farqli o'laroq, App Distribution tanlangan ishtirokchilarga qurilmalarni uzoq ko'rib chiqish jarayonisiz darhol yetkazib berish imkonini beradi. Xizmat Firebase Crashlytics bilan integratsiyalashgan bo'lib, bu dasturchilarga testerlardan to'g'ridan-to'g'ri ishdan chiqish hisobotlarini olish va ommaviy chiqarishdan oldin muammolarni tuzatish imkonini beradi.

App Distribution nima uchun kerak

Beta versiyalarni tarqatishning an'anaviy jarayoni APK/IPA ni elektron pochta orqali qo'lda yuborish, uchinchi tomon fayl almashish serverlariga yuklash yoki o'z serverini sozlashni o'z ichiga oladi. Firebase App Distribution bu muammolarni hal qiladi: Google Cloud'da yagona qurilma ombori, testerlarga avtomatik bildirishnomalar, markazlashtirilgan kirish boshqaruvi va Firebase Crashlytics orqali o'rnatilgan fikr-mulohaza. Xizmat CI/CD va muntazam chiqarishlarni amalda qo'llaydigan jamoalar uchun ajralmas hisoblanadi: yangi qurilma yuklashdan bir daqiqa o'tgach testerlar uchun mavjud bo'ladi.

Qo'llab-quvvatlanadigan qurilma formatlari

App Distribution mobil platformalar uchun barcha standart qurilma formatlarini qo'llab-quvvatlaydi. Android uchun — APK va Android App Bundle (AAB) o'rnatish vaqtida AAB dan avtomatik APK yaratish bilan. iOS uchun — ad-hoc, development va enterprise tarqatish uchun IPA fayllari. Har bir qurilma chiqarish qaydlari (release notes), versiya raqami va kuzatish uchun qurilma kodi bilan birga keladi. Yuklanadigan faylning maksimal hajmi 500 MB, qurilmalarni saqlash muddati — 150 kun.

Qurilmalarni yuklash va versiyalarni boshqarish

Qurilmalarni yuklash Firebase App Distribution ga Firebase Console, CLI (firebase appdistribution:distribute) yoki Fastlane va Gradle kabi avtomatlashtirilgan vositalar orqali amalga oshiriladi. Yuklash paytida qurilma versiyasi, chiqarish qaydlari va bildirishnoma olishi kerak bo'lgan testerlar yoki guruhlar ro'yxati ko'rsatiladi. Firebase avtomatik ravishda qurilmaga noyob identifikator beradi va uni havola orqali o'rnatish uchun mavjud qiladi.

Firebase Console orqali versiyalarni boshqarish

Firebase Console qurilmalarni yuklash va versiyalarni boshqarish uchun veb-interfeysni taqdim etadi. Konsolda ko'rsatiladi sana, versiya, holat va o'rnatishlar soni bilan barcha yuklangan qurilmalarning tarixi. Dasturchi tanqidiy xato topilsa, ma'lum versiyani o'chirib qo'yishi mumkin — bu versiyani barcha testerlar tomonidan o'rnatilishini bloklaydi. Konsol shuningdek, test faolligini kuzatishga yordam beradigan kunlar bo'yicha o'rnatish grafigini ko'rsatadi.

Firebase CLI orqali avtomatik yuklash

Firebase CLI qurilmalarni bir buyruq bilan yuklash imkonini beradi, bu CI/CD quvurlariga integratsiya uchun qulay. distribute buyrug'i fayl yo'lini, loyiha kirish tokenini, tester guruhlari ro'yxatini va ixtiyoriy chiqarish qaydlarini qabul qiladi. Autentifikatsiya uchun Firebase App Distribution Admin roli bilan Firebase xizmat hisobidan foydalaniladi. CLI Android va iOS qurilmalarini qo'llab-quvvatlaydi, platformani fayl kengaytmasiga qarab avtomatik aniqlaydi.

bash
# Qurilmani Firebase CLI orqali yuklash
firebase appdistribution:distribute \
    app-release.apk \
    --app 1:123456789:android:abc123def456 \
    --groups "qa-team,product-owners" \
    --release-notes "Avtorizatsiya xatosi tuzatildi" \
    --token "FIREBASE_TOKEN"

Testerlar va guruhlarni boshqarish

Firebase App Distribution moslashuvchan tester boshqaruv tizimini taqdim etadi: ishtirokchilarni elektron pochta orqali qo'shish, rollar yoki loyihalar bo'yicha guruhlar yaratish va turli qurilmalarni turli guruhlarga tayinlash mumkin. Yangi tester qo'shilganda, tizim unga ilovani o'rnatish bo'yicha ko'rsatmalar bilan taklifnoma yuboradi. Testerlar o'z guruhiga tayinlangan har bir yangi qurilma haqida avtomatik bildirishnomalar oladi.

Tester guruhlarini yaratish

Guruhlar testerlarni funktsional printsip bo'yicha tashkil etish imkonini beradi. Guruh misollari: QA jamoasi (barcha qurilmalarga to'liq kirish), Product Owners (barqaror qurilmalarga kirish), External Testerlar (tashqi beta testerlar uchun cheklangan kirish). Bitta tester bir nechta guruhga a'zo bo'lishi mumkin. Qurilma yuklanayotganda, dasturchi maqsadli guruhlarni tanlaydi — bildirishnomalarni faqat tanlangan guruhlar a'zolari oladi, bu esa ma'lumot shovqinini yo'q qiladi.

API orqali testerlarni qo'shish

Testerlarni dasturiy ravishda qo'shish uchun Firebase App Distribution API dan foydalaniladi. API imkon beradi testerlar yaratish, ularni guruhlarga qo'shish va kerak bo'lganda o'chirish. Bu ichki test boshqaruv tizimlari va bug trekerlari bilan integratsiya qilishda qulay. API orqali tester qo'shilganda, u ham birinchi ilovani o'rnatish havolasi bilan taklifnoma oladi.

js
const admin = require("firebase-admin")

const serviceAccount = require("./serviceAccountKey.json")
admin.initializeApp({ credential: admin.credential.cert(serviceAccount) })

async function addTestersToGroup(email, groupAlias) {
    try {
        await admin.appDistribution().addTesters(email, [groupAlias])
        console.log("Tester guruhga qo'shildi")
    } catch (error) {
        console.error("Xato:", error)
    }
}

addTestersToGroup("tester@example.com", "qa-team")

Android qurilmalarini tarqatish

Android qurilmalarini tarqatish Firebase App Distribution orqali ikkita formatni qo'llab-quvvatlaydi: APK va Android App Bundle (AAB). AAB yuklanayotganda, Firebase Google Play App Signing dan foydalanib tester qurilmasiga mos APK ni avtomatik yaratadi. Testerlar ilovani to'g'ridan-to'g'ri havola orqali o'rnatadi — ularga Google Play Console ga kirish kerak emas va ular Play Console da tester sifatida qo'shilishi shart emas. Bu Android uchun beta test jarayonini sezilarli darajada soddalashtiradi.

Android qurilmalari uchun talablar

App Distribution orqali o'rnatish uchun testerlar qurilmada noma'lum manbalardan o'rnatishni yoqishi kerak. Firebase avtomatik APK o'rnatish tugmasi bo'lgan veb-sahifaga olib boradigan havolani yaratadi. AAB formati uchun qurilma Play Core Library ni qo'llab-quvvatlashi va Google Play Store o'rnatilgan bo'lishi kerak. Firebase yakuniy versiyalar uchun AAB va tezkor iteratsiyalar uchun APK dan foydalanishni tavsiya qiladi.

App Distribution uchun Gradle sozlamalari

Firebase App Distribution uchun Gradle plagini qurilmalarni to'g'ridan-to'g'ri Gradle topshirig'idan yuborish imkonini beradi. Sozlash o'z ichiga oladi com.google.firebase.appdistribution plaginini qo'shish, xizmat hisobini sozlash va maqsadli guruhlarni belgilash. Sozlashdan so'ng, assembleDistRelease topshirig'i ilovani qurib va bir buyruq bilan Firebase App Distribution ga yuklaydi.

groovy
// build.gradle (module: app)
plugins {
    id 'com.android.application'
    id 'com.google.firebase.appdistribution'
}

android { // standard config }

firebaseAppDistribution {
    appId "1:123456789:android:abc123def456"
    serviceCredentialsFile "firebase-sa.json"
    groups "qa-team"
    releaseNotes "Avtomatik qurilma"
}

iOS qurilmalarini tarqatish

iOS qurilmalarini tarqatish Firebase App Distribution orqali qo'shimcha sozlashni talab qiladi, chunki Apple ilovalarni App Store dan tashqarida o'rnatilishini cheklaydi. iOS ilovalarini tarqatish uchun Apple Developer dasturining ad-hoc yoki enterprise sertifikatlaridan foydalanish kerak. Testerlar Apple Developer Portal da ad-hoc tarqatish uchun qurilma sifatida qo'shilishi yoki qurilma cheklovisiz enterprise tarqatishdan foydalanishi kerak.

Ad-hoc tarqatishni sozlash

Ad-hoc tarqatish uchun barcha tester qurilmalarining UDID larini to'plash va ularni Apple Developer Portal ga qo'shish kerak. Firebase App Distribution testerlarga UDID ni topish bo'yicha ko'rsatmalarni ko'rsatadi va ro'yxatdan o'tgan qurilmalarni avtomatik saqlaydi. UDID provisioning profile ga qo'shilgandan va IPA qurilgandan so'ng, testerlar o'rnatish havolasini oladi. Firebase ko'p sonli testerlari bo'lgan loyihalar uchun enterprise sertifikatidan foydalanishni tavsiya qiladi, chunki ad-hoc hisob uchun 100 qurilma bilan cheklangan.

Fastlane orqali IPA qurish

Fastlane — iOS ilovalarini qurishni avtomatlashtirish uchun tavsiya etilgan vosita. Lane match sertifikatlar va provisioning profile larni boshqaradi, lane sigh esa tarqatish uchun IPA yaratadi. Firebase App Distribution firebase_app_distribution plagini orqali Fastlane bilan integratsiyalanadi, IPA ni yuklaydi va testerlarga bildirishnoma yuboradi. Fastlane shuningdek, qo'shimcha plaginlar orqali versiyalarni boshqarish va chiqarish qaydlarini qo'llab-quvvatlaydi.

ruby
# Fastfile
lane :beta do
    match(type: :adhoc)
    gym(scheme: "MyApp", export_method: "ad-hoc")
    firebase_app_distribution(
        app: "1:123456789:ios:abc123def456",
        groups: "qa-team",
        release_notes: "Build dan #\{Time.now.strftime
            ('%Y-%m-%d %H:%M')}"
    )
end

CI/CD va Fastlane bilan integratsiya

Firebase App Distribution ning to'liq integratsiyasi CI/CD bilan har bir repository ga commitda avtomatik ravishda yangi qurilmalarni chop etish imkonini beradi. CI quvurini sozlash orqali jamoa kod surilgandan bir necha daqiqa o'tgach testerlardan zudlik bilan fikr-mulohaza oladi. App Distribution barcha mashhur CI tizimlarini qo'llab-quvvatlaydi: GitHub Actions, GitLab CI, Jenkins, Bitrise va CircleCI. Har bir platforma uchun o'z sozlash talab qilinadi, ammo umumiy printsip bir xil: qurish → yuklash → bildirishnoma.

GitHub Actions orqali sozlash

GitHub Actions develop branchiga surish yoki pull request yaratishda qurilmalarning avtomatik tarqatilishini sozlash imkonini beradi. Workflow o'z ichiga oladi Java/Flutter/Node.js o'rnatish, ilovani qurish, Firebase Service Account orqali autentifikatsiya va distribute buyrug'i bilan Firebase CLI ni ishga tushirish. Sirlar (tokenlar, xizmat hisoblari) GitHub Secrets da saqlanadi va qurilish jurnallarida oshkor etilmaydi. iOS uchun qo'shimcha ravishda Xcode sozlash va workflow da Fastlane o'rnatish talab qilinadi.

yaml
# .github/workflows/distribute.yml
name: Distribute to Firebase
on:
  push: { branches: [ develop ] }
jobs:
  build-and-distribute:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Java
        uses: actions/setup-java@v3
        with: { distribution: "temurin", java-version: "17" }
      - name: Build APK
        run: ./gradlew assembleDebug
      - name: Upload to Firebase
        uses: wzieba/Firebase-Distribution-GitHub-Action@v1
        with:
          appId: "${{ secrets.FIREBASE_APP_ID }}"
          serviceCredentialsFileContent: "${{ secrets.FIREBASE_SA_KEY }}"
          groups: qa-team
          file: app/build/outputs/apk/debug/app-debug.apk

Fikr-mulohaza to'plash

Firebase App Distribution testerlardan ishdan chiqish hisobotlarini avtomatik to'plash uchun Firebase Crashlytics bilan integratsiyalanadi. Crashlytics avtomatik ishdan chiqishni ma'lum qurilma versiyasi va qurilmaga bog'laydi, bu muammoni tez lokalizatsiya qilish va tuzatishga yordam beradi. Testerlar shuningdek, App Distribution ning veb-interfeysi orqali ekran tasvirlari va sharhlarni yuborishi mumkin, qurilma o'rnatilgandan so'ng fikr-mulohaza formasi havolasini oladi.

Ko'p beriladigan savollar

App Distribution TestFlight dan nimasi bilan farq qiladi?

Firebase App Distribution — bu ko'p platformali xizmat (Android + iOS), TestFlight dan farqli o'laroq, u faqat iOS uchun ishlaydi. App Distribution shuningdek Crashlytics va Firebase Analytics bilan integratsiyalanib, ikkala platformada beta test uchun yagona ekotizimni ta'minlaydi.

Qurilmalar App Distribution da qancha vaqt saqlanadi?

Qurilmalar 150 kun saqlanadi yuklash vaqtidan boshlab. Bu muddatdan so'ng ular avtomatik o'chiriladi. Testerlar eskirgan versiyalarni o'rnatmasligi uchun muntazam ravishda yangi qurilmalarni yuklash va Firebase Console orqali eskirganlarini qo'lda o'chirish tavsiya etiladi.

Qancha tester qo'shish mumkin?

Cheklov yo'q Firebase App Distribution da testerlar soni uchun. iOS ad-hoc tarqatish uchun Apple hisob uchun 100 qurilma limiti amal qiladi. Android va iOS enterprise tarqatish uchun testerlar soni cheklanmagan.

Android uchun APK o'rniga AAB yuklash mumkinmi?

Ha, App Distribution AAB (Android App Bundle) ni qo'llab-quvvatlaydi. Firebase Google Play App Signing dan foydalanib har bir tester qurilmasi uchun AAB dan avtomatik APK yaratadi. Bu, ayniqsa, Play Store da chop etishdan oldin test qilish uchun qulay.

Firebase App Distribution bepulmi?

Ha, App Distribution Firebase ning bepul Spark rejasiga kiradi. Spark cheklovlari: loyiha uchun oyiga 500 tagacha tester va 25 000 o'rnatish. Blaze rejasi bu cheklovlarni olib tashlaydi va ustuvor qo'llab-quvvatlashni qo'shadi.

Xulosa

  • Firebase App Distribution — do'konlarda chop etmasdan Android (APK/AAB) va iOS (IPA) qo'llab-quvvatlashi bilan mobil ilovalarning beta qurilmalarini tarqatish xizmati.
  • Tester boshqaruvi — har bir yangi qurilmada avtomatik elektron pochta va push bildirishnomalari bilan moslashuvchan guruh tizimi.
  • Qurilmalarni yuklash Firebase Console, CLI, Gradle plagini yoki Fastlane orqali testerlarga avtomatik bildirishnoma bilan amalga oshiriladi.
  • Android qurilmalari APK va AAB ni qo'llab-quvvatlaydi, AAB dan avtomatik APK yaratish, Google Play Consolesiz to'g'ridan-to'g'ri havola orqali o'rnatish.
  • iOS qurilmalari Apple ad-hoc yoki enterprise sertifikatini talab qiladi, UDID ro'yxatdan o'tkazish va IPA qurishni avtomatlashtirish uchun Fastlane qo'llab-quvvatlashi.
  • CI/CD integratsiyasi — GitHub Actions, GitLab CI, Jenkins, Bitrise Firebase CLI yoki Fastlane bilan har bir surishda avtomatik chop etish.
  • Bepul oyiga 500 tester va 25 000 o'rnatishgacha, qurilmalar 150 kun saqlanadi, ishdan chiqish hisobotlari uchun Firebase Crashlytics bilan integratsiyalangan.

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing