सीआई/सीडी का इस्तेमाल करके, क्वालिटी जांच करने वाले लोगों को Android ऐप्लिकेशन उपलब्ध कराने के सबसे सही तरीके

इस दस्तावेज़ में, Firebase App Distribution का इस्तेमाल करने के सबसे सही तरीकों के बारे में बताया गया है. इससे, Android के प्री-रिलीज़ टेस्टिंग वर्कफ़्लो को CI/CD एनवायरमेंट में बार-बार इस्तेमाल किया जा सकता है. इनमें Gradle और fastlane जैसे समाधान शामिल हैं. हालांकि, आपको और भी ज़्यादा विकल्प देने के लिए, हमने Firebase कंसोल, Firebase CLI, और सार्वजनिक Firebase App Distribution API के ज़रिए उपलब्ध समाधानों को भी शामिल किया है. हम रिलीज़ और टेस्टर की सीमाओं के बारे में भी बताते हैं, ताकि आपको बेहतरीन अनुभव मिल सके.

अगर Apple प्लैटफ़ॉर्म का भी इस्तेमाल किया जा रहा है, तो सीआई/सीडी और फ़ास्टलेन का इस्तेमाल करके, QA टेस्टर को Apple ऐप्लिकेशन डिस्ट्रिब्यूट करने के सबसे सही तरीके देखें.

शुरू करने से पहले

इस दस्तावेज़ में दिए गए सबसे सही तरीके लागू करने से पहले, पक्का करें कि आपने Firebase कंसोल में हर ऐप्लिकेशन के लिए App Distribution को चालू किया हो. अगर आपने App Distribution को चालू नहीं किया है, तो आपको 404 गड़बड़ी दिखेगी.

App Distribution को चालू करने के लिए, यह तरीका अपनाएं:

  1. Firebase कंसोल में, App Distribution पेज खोलें.
  2. अपना Android ऐप्लिकेशन चुनें.
  3. शुरू करें पर क्लिक करें.

Android ऐप्लिकेशन बंडल (AAB), Android पैकेज का सबसे सामान्य फ़ॉर्मैट बन रहा है. इसलिए, हमारा सुझाव है कि आप Google Play से लिंक करके, टेस्टर को AAB डिस्ट्रिब्यूट करने की सुविधा सेट अप करें.

सीआई/सीडी पाइपलाइन का इस्तेमाल करके, रिलीज़ से पहले की टेस्टिंग के वर्कफ़्लो को अपने-आप होने वाली प्रोसेस में बदलना

अगर आपको टेस्टर के लिए ऐप्लिकेशन बनाने और रिलीज़ करने की प्रोसेस को अपने-आप पूरा होने वाली प्रोसेस में बदलना है और CI/CD का इस्तेमाल करना है, तो हमारा सुझाव है कि आप fastlane या Gradle का इस्तेमाल करें. Firebase CLI का इस्तेमाल करके भी, Firebase के कई प्रॉडक्ट ऐक्सेस किए जा सकते हैं.

fastlane का इस्तेमाल करना

fastlane का इस्तेमाल करके, App Distribution को अपनी CI/CD पाइपलाइन में इंटिग्रेट करें. fastlane एक ओपन सोर्स टूल है. यह iOS और Android ऐप्लिकेशन बनाने और रिलीज़ करने की प्रोसेस को ऑटोमेट करता है. टेस्टर के लिए, नई रिलीज़ अपने-आप बनाने और उन्हें डिस्ट्रिब्यूट करने से यह पक्का किया जा सकता है कि टेस्टर के पास हमेशा आपके ऐप्लिकेशन का सबसे नया टेस्ट वर्शन हो.

fastlane के साथ App Distribution को इंटिग्रेट करने का तरीका जानने के लिए, fastlane का इस्तेमाल करके टेस्टर को Android ऐप्लिकेशन डिस्ट्रिब्यूट करना लेख पढ़ें.

Gradle का इस्तेमाल करना

App Distribution Gradle प्लगइन का इस्तेमाल करके, App Distribution को Android की बिल्ड प्रोसेस में इंटिग्रेट करने के लिए Gradle का इस्तेमाल करें. इस प्लगिन की मदद से, अपने ऐप्लिकेशन की build.gradle फ़ाइल में टेस्टर और रिलीज़ नोट तय किए जा सकते हैं. इससे, आपको अपने ऐप्लिकेशन के अलग-अलग बिल्ड टाइप और वैरिएंट के लिए डिस्ट्रिब्यूशन कॉन्फ़िगर करने में मदद मिलती है.

App Distribution को Gradle के साथ इंटिग्रेट करने का तरीका जानने के लिए, Gradle का इस्तेमाल करके, टेस्टर के साथ Android ऐप्लिकेशन डिस्ट्रिब्यूट करना लेख पढ़ें.

Firebase CLI का इस्तेमाल करना

Firebase के App Distribution CLI टूल का इस्तेमाल करके, टेस्टर को प्रोग्राम के हिसाब से बिल्ड डिस्ट्रिब्यूट करें. किसी बिल्ड के लिए, टेस्टर और रिलीज़ नोट तय किए जा सकते हैं.

ऐप्लिकेशन का Firebase ऐप्लिकेशन आईडी डालकर, Android के नए बिल्ड को डिस्ट्रिब्यूट करें. इसके अलावा, रिलीज़ नोट और टेस्टर के ईमेल पते वाली फ़ाइल भी जोड़ी जा सकती है:

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

Firebase सीएलआई का इस्तेमाल करके, अपने बिल्ड को ऑटोमेट करने के बारे में ज़्यादा जानने के लिए, Firebase सीएलआई का इस्तेमाल करके, टेस्टर को Android ऐप्लिकेशन डिस्ट्रिब्यूट करना लेख पढ़ें.

पुष्टि करने के लिए सेवा क्रेडेंशियल का इस्तेमाल करना

सेवा खातों के साथ App Distribution fastlane प्लगिन, Gradle प्लगिन या Firebase सीएलआई का इस्तेमाल करें. सेवा खाता एक तरह का Google खाता होता है. यह उपयोगकर्ताओं के बजाय ऐप्लिकेशन के लिए होता है. आपका सीआई सिस्टम, सेवा खातों का इस्तेमाल करके App Distribution के वर्कलोड चला सकता है. ज़्यादा जानने के लिए, सेवा खाते से पुष्टि करना लेख पढ़ें.

अगर वर्कलोड आइडेंटिटी फ़ेडरेशन का इस्तेमाल किया जा रहा है, तो सेवा खाते की कुंजी के बजाय, क्रेडेंशियल कॉन्फ़िगरेशन फ़ाइल जनरेट करके उसका इस्तेमाल किया जा सकता है.

रिलीज़ की सीमाओं का ध्यान रखें

App Distribution हर ऐप्लिकेशन के लिए ज़्यादा से ज़्यादा 1,000 रिलीज़ को सेव कर सकता है. इसका मतलब है कि रिलीज़ की सीमा पार होने पर, App Distribution सीमा से ज़्यादा पुरानी रिलीज़ को अपने-आप मिटा देता है. रिलीज़ की सीमाएं मैनेज करने का तरीका जानने के लिए, ऐप्लिकेशन की रिलीज़ कितने समय तक उपलब्ध रहती हैं? लेख पढ़ें

एक ही सेट के टेस्टर को कई रिलीज़ में जोड़ना

अगर आपको अपनी रिलीज़ में बड़ी संख्या में टेस्टर जोड़ने हैं, तो App Distribution की टेस्टर को मैनेज करने की सुविधा का इस्तेमाल करें.

हमारा सुझाव है कि एक ही टेस्टर को कई रिलीज़ में जोड़ने के लिए, ग्रुप का इस्तेमाल करें. ग्रुप, ऐक्सेस कंट्रोल लिस्ट के तौर पर काम करता है. किसी टेस्टर को ग्रुप से हटाने पर, उसके पास उस ग्रुप में डिस्ट्रिब्यूट किए गए सभी वर्शन का ऐक्सेस नहीं रहता. ज़्यादा जानने के लिए, किसी ग्रुप में टेस्टर जोड़ना और हटाना लेख पढ़ें.

अगर आपको कई टेस्टर मैनेज करने हैं, तो Firebase कंसोल का इस्तेमाल करके, एक साथ कई टेस्टर जोड़े और हटाए जा सकते हैं. टेस्टर को अपने-आप जोड़ने और हटाने के लिए, Firebase CLI, fastlane, Gradle या सार्वजनिक Firebase App Distribution API का इस्तेमाल करें.

जांच करने वाले लोगों की सीमा का ध्यान रखें

App Distribution की मदद से, किसी Firebase प्रोजेक्ट या App Distribution ग्रुप में टेस्टर जोड़ने की संख्या सीमित की जा सकती है. इन सीमाओं से ज़्यादा टेस्टर को ऐप्लिकेशन उपलब्ध नहीं कराया जा सकेगा. टेस्टर की सीमाओं के बारे में ज़्यादा जानने के लिए, क्या मेरे ऐप्लिकेशन में टेस्टर जोड़ने की कोई सीमा है? लेख पढ़ें

संभावित टेस्टर को टेस्टिंग के लिए खुद रजिस्टर करने की अनुमति देना

हमारा सुझाव है कि ज़्यादा टेस्टर के साथ ऐप्लिकेशन को आसानी से डिस्ट्रिब्यूट करने के लिए, न्योता लिंक का इस्तेमाल करें. न्योता लिंक एक यूनीक यूआरएल होता है. इसकी मदद से, टेस्टर अपने ईमेल पते डालकर किसी ऐप्लिकेशन को टेस्ट करने के लिए साइन अप कर सकते हैं. उपयोगकर्ताओं को ऐप्लिकेशन टेस्टर की सूची में खुद को जोड़ने की अनुमति देने से, इंटरनल टेस्टिंग करने वाले लोगों की संख्या आसानी से बढ़ाई जा सकती है.

न्योता लिंक का इस्तेमाल इन मामलों में किया जा सकता है: कंपनी के डॉगफ़ूड प्रोग्राम, बड़ी क्यूए टीमों वाले संगठन, और डेवलपर ग्रुप जो चाहते हैं कि उनके क्लाइंट, टेस्टर के ऐक्सेस को कंट्रोल कर सकें.

हमारा सुझाव है कि आप किसी ग्रुप के लिए, न्योते का लिंक बनाएं. न्योते के लिंक का इस्तेमाल करके साइन अप करने वाले किसी भी टेस्टर को, बाद की रिलीज़ में अपने-आप जोड़ दिया जाता है.

ज़्यादा जानने के लिए, न्योता भेजने के लिंक बनाना और किसी ग्रुप में टेस्टर जोड़ना और उन्हें हटाना लेख पढ़ें.

पक्का करें कि टेस्टर, उस वर्शन की जांच कर रहे हों जो आपके लिए ज़रूरी है

नया वर्शन अपलोड होने पर, टेस्टर को ईमेल से सूचना दी जाती है. इस सूचना के साथ-साथ, यहां दी गई सुविधाओं का इस्तेमाल किया जा सकता है. जैसे, रिलीज़ लिंक और ऐप्लिकेशन में सूचनाएं. इससे यह पक्का किया जा सकता है कि टेस्टर, ऐप्लिकेशन के उस वर्शन की जांच कर रहे हैं जो आपके लिए ज़रूरी है:

  • रिलीज़ के लिंक: इस सुविधा का इस्तेमाल तब करें, जब आपको टेस्टर के साथ कोई खास वर्शन शेयर करना हो. रिलीज़ लिंक इस्तेमाल करने का तरीका जानने के लिए, Firebase कंसोल का इस्तेमाल करके, टेस्टर को Android ऐप्लिकेशन डिस्ट्रिब्यूट करना लेख पढ़ें. ये लिंक, हमारे Firebase, fastlane, और Gradle कमांड-लाइन (सीएलआई) टूल के साथ भी उपलब्ध हैं. इनका इस्तेमाल, बिल्ड ऑटोमेशन टूल के साथ किया जा सकता है.
  • ऐप्लिकेशन में दिखने वाली सूचनाएं: इन सूचनाओं का इस्तेमाल तब करें, जब आपको यह पक्का करना हो कि टेस्टर, आपके ऐप्लिकेशन के नए वर्शन की टेस्टिंग कर रहे हैं. Firebase App Distribution Android SDK टूल को इंटिग्रेट करके, अपने टेस्टर को ऐप्लिकेशन में सीधे तौर पर सूचनाएं दिखाई जा सकती हैं. ऐसा तब किया जा सकता है, जब आपके ऐप्लिकेशन के नए बिल्ड उपलब्ध हों. ऐप्लिकेशन में सूचनाएं जोड़ने का तरीका जानने के लिए, टेस्टर को नई बिल्ड के बारे में सूचना देना लेख पढ़ें.

कंपनी छोड़ने वाले टेस्टर का ऐक्सेस अपने-आप हट जाता है

जब आपका CI/CD इंटरनल टेस्टिंग फ़्लो काम कर रहा हो, तब आपको यह पक्का करना होगा कि कंपनी छोड़ने वाले लोगों के पास, आपके इंटरनल बिल्ड का ऐक्सेस न हो. App Distribution, टेस्टर को बिल्ड का ऐक्सेस मैनेज करने में आपकी मदद करता है. इसके लिए, ये विकल्प उपलब्ध हैं: