Firebase App Distribution Google की एक सेवा है जो मोबाइल एप्लिकेशन के प्री-रिलीज़ बिल्ड को ऐप स्टोर में प्रकाशित किए बिना परीक्षकों और आंतरिक टीमों के बीच वितरित करने के लिए है। App Distribution APK और IPA फ़ाइलों को अपलोड करने, परीक्षक समूहों के प्रबंधन और प्रतिक्रिया एकत्र करने के लिए एक एकीकृत इंटरफ़ेस प्रदान करता है। Firebase Documentation, 2026 के अनुसार, सेवा ईमेल और पुश सूचनाओं के माध्यम से नए संस्करणों के बारे में परीक्षकों को स्वचालित रूप से सूचित करती है, और Fastlane एकीकरण मैन्युअल क्रियाओं के बिना सीधे CI/CD पाइपलाइन से बिल्ड प्रकाशित करने की अनुमति देता है। App Distribution Android (AAB/APK) और iOS (IPA) दोनों का समर्थन करता है, जिसमें ad-hoc और एंटरप्राइज़ वितरण शामिल है।
मुख्य बातें
Firebase App Distribution Google की एक सेवा है जो मोबाइल एप्लिकेशन के प्री-रिलीज़ संस्करणों को परीक्षकों और हितधारकों के बीच वितरित करने के लिए है। ऐप स्टोर में प्रकाशित करने के विपरीत, App Distribution लंबी समीक्षा प्रक्रिया के बिना चयनित प्रतिभागियों को तुरंत बिल्ड देने की अनुमति देता है। सेवा Firebase Crashlytics के साथ एकीकृत है, जो डेवलपर्स को सीधे परीक्षकों से क्रैश रिपोर्ट प्राप्त करने और सार्वजनिक रिलीज़ से पहले समस्याओं को ठीक करने में सक्षम बनाती है।
बीटा संस्करण वितरण की पारंपरिक प्रक्रिया में ईमेल द्वारा मैन्युअल रूप से APK/IPA फ़ाइलें भेजना, तृतीय-पक्ष फ़ाइल साझाकरण सेवाओं पर अपलोड करना या अपना स्वयं का सर्वर सेट करना शामिल है। Firebase App Distribution इन समस्याओं को हल करता है: Google Cloud पर एकीकृत बिल्ड रिपॉजिटरी, स्वचालित परीक्षक सूचनाएँ, केंद्रीकृत पहुँच प्रबंधन और Firebase Crashlytics के माध्यम से अंतर्निहित प्रतिक्रिया। यह सेवा CI/CD और नियमित रिलीज़ का अभ्यास करने वाली टीमों के लिए अपरिहार्य है: अपलोड करने के एक मिनट के भीतर परीक्षकों के लिए एक नया बिल्ड उपलब्ध होता है।
App Distribution मोबाइल प्लेटफ़ॉर्म के लिए सभी मानक बिल्ड प्रारूपों का समर्थन करता है। Android के लिए — APK और Android App Bundle (AAB) इंस्टॉलेशन के दौरान AAB से स्वचालित APK जनरेशन के साथ। iOS के लिए — ad-hoc, डेवलपमेंट और एंटरप्राइज़ वितरण के लिए IPA फ़ाइलें। प्रत्येक बिल्ड रिलीज़ नोट्स, संस्करण संख्या और ट्रैकिंग के लिए बिल्ड कोड के साथ आता है। अधिकतम अपलोड फ़ाइल आकार 500 MB है, और बिल्ड 150 दिनों के लिए संग्रहीत किए जाते हैं।
Firebase App Distribution में बिल्ड अपलोड करना Firebase Console, CLI (firebase appdistribution:distribute) या Fastlane और Gradle जैसे स्वचालित टूल के माध्यम से किया जाता है। अपलोड करते समय, बिल्ड संस्करण, रिलीज़ नोट्स और परीक्षकों या समूहों की सूची निर्दिष्ट की जाती है जिन्हें सूचना प्राप्त करनी चाहिए। Firebase स्वचालित रूप से बिल्ड को एक अद्वितीय पहचानकर्ता प्रदान करता है और इसे लिंक के माध्यम से इंस्टॉलेशन के लिए उपलब्ध कराता है।
Firebase Console बिल्ड अपलोड करने और संस्करणों के प्रबंधन के लिए एक वेब इंटरफ़ेस प्रदान करता है। कंसोल प्रदर्शित करता है दिनांक, संस्करण, स्थिति और इंस्टॉलेशन संख्या के साथ सभी अपलोड किए गए बिल्ड का इतिहास। यदि कोई गंभीर बग पाया जाता है तो डेवलपर किसी विशिष्ट संस्करण को अक्षम कर सकता है — यह सभी परीक्षकों के लिए उस संस्करण की स्थापना को अवरुद्ध कर देगा। कंसोल दिन के अनुसार इंस्टॉलेशन ग्राफ़ भी दिखाता है, जो परीक्षण गतिविधि को ट्रैक करने में मदद करता है।
Firebase CLI एकल कमांड के साथ बिल्ड अपलोड करने की अनुमति देता है, जो CI/CD पाइपलाइन एकीकरण के लिए सुविधाजनक है। distribute कमांड फ़ाइल पथ, प्रोजेक्ट एक्सेस टोकन, परीक्षक समूहों की सूची और वैकल्पिक रिलीज़ नोट्स स्वीकार करता है। प्रमाणीकरण Firebase App Distribution Admin भूमिका वाले Firebase सेवा खाते का उपयोग करता है। CLI Android और iOS दोनों बिल्ड का समर्थन करता है, फ़ाइल एक्सटेंशन द्वारा स्वचालित रूप से प्लेटफ़ॉर्म का पता लगाता है।
# Firebase CLI के माध्यम से बिल्ड अपलोड करना
firebase appdistribution:distribute \
app-release.apk \
--app 1:123456789:android:abc123def456 \
--groups "qa-team,product-owners" \
--release-notes "प्राधिकरण बग ठीक किया गया" \
--token "FIREBASE_TOKEN"
Firebase App Distribution एक लचीली परीक्षक प्रबंधन प्रणाली प्रदान करता है: ईमेल द्वारा प्रतिभागियों को जोड़ा जा सकता है, भूमिकाओं या प्रोजेक्ट्स के अनुसार समूह बनाए जा सकते हैं, और विभिन्न समूहों को विभिन्न बिल्ड असाइन किए जा सकते हैं। जब कोई नया परीक्षक जोड़ा जाता है, तो सिस्टम उन्हें एप्लिकेशन इंस्टॉल करने के निर्देशों के साथ एक आमंत्रण ईमेल भेजता है। परीक्षकों को उनके समूह को असाइन किए गए प्रत्येक नए बिल्ड के बारे में स्वचालित सूचनाएँ प्राप्त होती हैं।
समूह परीक्षकों को कार्यात्मक रूप से व्यवस्थित करने की अनुमति देते हैं। समूहों के उदाहरण: QA टीम (सभी बिल्ड तक पूर्ण पहुँच), उत्पाद स्वामी (स्थिर बिल्ड तक पहुँच), बाहरी परीक्षक (बाहरी बीटा परीक्षकों के लिए सीमित पहुँच)। एक परीक्षक कई समूहों से संबंधित हो सकता है। बिल्ड अपलोड करते समय, डेवलपर लक्ष्य समूहों का चयन करता है — केवल चयनित समूहों के सदस्यों को सूचनाएँ प्राप्त होती हैं, जिससे सूचना शोर समाप्त होता है।
प्रोग्रामेटिक रूप से परीक्षकों को जोड़ने के लिए Firebase App Distribution API का उपयोग किया जाता है। API आपको परीक्षक बनाने, उन्हें समूहों में जोड़ने और आवश्यकता पड़ने पर हटाने की अनुमति देता है। यह आंतरिक परीक्षण प्रबंधन प्रणालियों और बग ट्रैकर्स के साथ एकीकरण के लिए सुविधाजनक है। जब API के माध्यम से कोई परीक्षक जोड़ा जाता है, तो उन्हें पहले एप्लिकेशन को इंस्टॉल करने के लिंक के साथ एक आमंत्रण ईमेल भी प्राप्त होता है।
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("परीक्षक समूह में जोड़ा गया")
} catch (error) {
console.error("त्रुटि:", error)
}
}
addTestersToGroup("tester@example.com", "qa-team")
Firebase App Distribution के माध्यम से Android बिल्ड का वितरण दो प्रारूपों का समर्थन करता है: APK और Android App Bundle (AAB)। AAB अपलोड करते समय, Firebase Google Play App Signing का उपयोग करके परीक्षक के डिवाइस के साथ संगत APK स्वचालित रूप से उत्पन्न करता है। परीक्षक सीधे लिंक के माध्यम से एप्लिकेशन इंस्टॉल करते हैं — उन्हें Google Play Console तक पहुँच की आवश्यकता नहीं है, न ही उन्हें Play Console में परीक्षक के रूप में जोड़े जाने की आवश्यकता है। यह Android के लिए बीटा परीक्षण प्रक्रिया को काफी सरल बनाता है।
App Distribution के माध्यम से इंस्टॉल करने के लिए, परीक्षकों को अपने डिवाइस पर अज्ञात स्रोतों से इंस्टॉलेशन सक्षम करना होगा। Firebase स्वचालित रूप से APK इंस्टॉल बटन वाले एक वेब पेज का लिंक उत्पन्न करता है। AAB प्रारूप के लिए, डिवाइस को Play Core Library का समर्थन करना चाहिए और Google Play Store स्थापित होना चाहिए। Firebase अंतिम संस्करणों के लिए AAB और त्वरित पुनरावृत्तियों के लिए APK का उपयोग करने की अनुशंसा करता है।
Gradle के लिए Firebase App Distribution प्लगइन Gradle कार्य से सीधे बिल्ड भेजने की अनुमति देता है। कॉन्फ़िगरेशन में शामिल है com.google.firebase.appdistribution प्लगइन जोड़ना, सेवा खाता सेट करना और लक्ष्य समूहों को कॉन्फ़िगर करना। सेटअप के बाद, assembleDistRelease कार्य एक कमांड के साथ एप्लिकेशन बनाएगा और इसे Firebase App Distribution में अपलोड करेगा।
// 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 "स्वचालित बिल्ड"
}
Firebase App Distribution के माध्यम से iOS बिल्ड के वितरण के लिए अतिरिक्त सेटअप की आवश्यकता होती है क्योंकि Apple App Store के बाहर एप्लिकेशन इंस्टॉलेशन को प्रतिबंधित करता है। iOS ऐप वितरित करने के लिए, Apple डेवलपर प्रोग्राम से ad-hoc या एंटरप्राइज़ प्रमाणपत्रों का उपयोग करना आवश्यक है। परीक्षकों को ad-hoc वितरण के लिए उपकरणों के रूप में Apple डेवलपर पोर्टल में जोड़ा जाना चाहिए, या डिवाइस सीमा के बिना एंटरप्राइज़ वितरण का उपयोग करना चाहिए।
Ad-hoc वितरण के लिए, सभी परीक्षक उपकरणों के UDID एकत्र करना और उन्हें Apple डेवलपर पोर्टल में जोड़ना आवश्यक है। Firebase App Distribution परीक्षकों को UDID खोजने के निर्देश दिखाता है और स्वचालित रूप से पंजीकृत उपकरणों को सहेजता है। प्रोविज़निंग प्रोफ़ाइल में UDID जोड़ने और IPA बनाने के बाद, परीक्षकों को एक इंस्टॉलेशन लिंक प्राप्त होता है। Firebase बड़ी संख्या में परीक्षकों वाले प्रोजेक्ट्स के लिए एंटरप्राइज़ प्रमाणपत्र का उपयोग करने की अनुशंसा करता है, क्योंकि ad-hoc प्रति खाता 100 उपकरणों तक सीमित है।
Fastlane iOS एप्लिकेशन बिल्ड को स्वचालित करने के लिए अनुशंसित टूल है। match lane प्रमाणपत्रों और प्रोविज़निंग प्रोफ़ाइलों का प्रबंधन करता है, जबकि sigh lane वितरण के लिए IPA बनाती है। Firebase App Distribution firebase_app_distribution प्लगइन के माध्यम से Fastlane के साथ एकीकृत होता है, जो IPA अपलोड करता है और परीक्षकों को सूचित करता है। Fastlane अतिरिक्त प्लगइन के माध्यम से संस्करण प्रबंधन और रिलीज़ नोट्स का भी समर्थन करता है।
# 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: "#\{Time.now.strftime से बिल्ड
('%Y-%m-%d %H:%M')}"
)
end
CI/CD के साथ Firebase App Distribution का पूर्ण एकीकरण रिपॉजिटरी में प्रत्येक कमिट के साथ स्वचालित रूप से नए बिल्ड प्रकाशित करने की अनुमति देता है। CI पाइपलाइन सेट करके, टीम को कोड पुश करने के कुछ मिनटों बाद परीक्षकों से तत्काल प्रतिक्रिया मिलती है। App Distribution सभी लोकप्रिय CI सिस्टम का समर्थन करता है: GitHub Actions, GitLab CI, Jenkins, Bitrise और CircleCI। प्रत्येक प्लेटफ़ॉर्म को अपने कॉन्फ़िगरेशन की आवश्यकता होती है, लेकिन सामान्य सिद्धांत समान है: बिल्ड → अपलोड → सूचित करें।
GitHub Actions develop ब्रांच में पुश करने या पुल रिक्वेस्ट बनाने पर स्वचालित बिल्ड वितरण सेट करने की अनुमति देता है। वर्कफ़्लो में शामिल है Java/Flutter/Node.js इंस्टॉल करना, एप्लिकेशन बनाना, Firebase सेवा खाते के माध्यम से प्रमाणीकरण करना और distribute कमांड के साथ Firebase CLI चलाना। रहस्य (टोकन, सेवा खाते) GitHub Secrets में संग्रहीत होते हैं और बिल्ड लॉग में प्रकट नहीं होते हैं। iOS के लिए, वर्कफ़्लो में Xcode सेटअप और Fastlane इंस्टॉलेशन की अतिरिक्त आवश्यकता होती है।
# .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
Firebase App Distribution परीक्षकों से स्वचालित क्रैश रिपोर्ट संग्रह के लिए Firebase Crashlytics के साथ एकीकृत होता है। Crashlytics स्वचालित रूप से क्रैश को एक विशिष्ट बिल्ड संस्करण और डिवाइस से जोड़ता है, जो समस्या का तुरंत पता लगाने और ठीक करने में मदद करता है। परीक्षक App Distribution वेब इंटरफ़ेस के माध्यम से स्क्रीनशॉट और टिप्पणियाँ भी भेज सकते हैं, बिल्ड इंस्टॉल करने के बाद फीडबैक फ़ॉर्म का लिंक प्राप्त कर सकते हैं।
अक्सर पूछे जाने वाले प्रश्न
Firebase App Distribution एक क्रॉस-प्लेटफ़ॉर्म सेवा (Android + iOS) है, TestFlight के विपरीत जो केवल iOS के लिए काम करता है। App Distribution Crashlytics और Firebase Analytics के साथ भी एकीकृत होता है, जो दोनों प्लेटफ़ॉर्म पर बीटा परीक्षण के लिए एक एकीकृत पारिस्थितिकी तंत्र प्रदान करता है।
बिल्ड अपलोड करने की तारीख से 150 दिनों तक संग्रहीत रहते हैं। इस अवधि के बाद, वे स्वचालित रूप से हटा दिए जाते हैं। परीक्षकों को पुराने संस्करण स्थापित करने से रोकने के लिए नियमित रूप से नए बिल्ड अपलोड करने और Firebase Console के माध्यम से मैन्युअल रूप से पुराने बिल्ड को हटाने की अनुशंसा की जाती है।
Firebase App Distribution में परीक्षकों की संख्या की कोई सीमा नहीं है। iOS ad-hoc वितरण के लिए, Apple की प्रति खाता 100 उपकरणों की सीमा लागू होती है। Android और iOS एंटरप्राइज़ वितरण के लिए, परीक्षकों की संख्या पर कोई प्रतिबंध नहीं है।
हाँ, App Distribution AAB (Android App Bundle) का समर्थन करता है। Firebase Google Play App Signing का उपयोग करके प्रत्येक परीक्षक के डिवाइस के लिए AAB से स्वचालित रूप से APK उत्पन्न करता है। यह Play Store में प्रकाशित करने से पहले परीक्षण के लिए विशेष रूप से सुविधाजनक है।
हाँ, App Distribution Firebase की मुफ़्त Spark योजना में शामिल है। Spark योजना की सीमाएँ: प्रति प्रोजेक्ट प्रति माह 500 परीक्षक और 25,000 इंस्टॉल तक। Blaze योजना इन सीमाओं को हटा देती है और प्राथमिकता समर्थन जोड़ती है।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें