इस दस्तावेज़ में, Firebase App Distribution का इस्तेमाल करने के सबसे सही तरीके बताए गए हैं. इनकी मदद से, सीआई/सीडी एनवायरमेंट में Android ऐप्लिकेशन को रिलीज़ करने से पहले, उसकी टेस्टिंग के वर्कफ़्लो को टिकाऊ और दोहराने लायक बनाया जा सकता है. इनमें Gradle और fastlane शामिल हैं. हालांकि, आपको ज़्यादा सुविधाएं देने के लिए, हम Firebase कंसोल, Firebase सीएलआई, और सार्वजनिक Firebase App Distribution एपीआई के ज़रिए उपलब्ध समाधान भी शामिल करते हैं. हम रिलीज़ और टेस्टर की सीमाओं के बारे में भी बताते हैं, ताकि आप बेहतर अनुभव के लिए पहले से ही प्लान कर सकें.
अगर Apple के प्लैटफ़ॉर्म भी इस्तेमाल किए जा रहे हैं, तो सीआई/सीडी और fastlane का इस्तेमाल करके, क्यूए टेस्टर को Apple ऐप्लिकेशन डिस्ट्रिब्यूट करने के सबसे सही तरीके देखें.
शुरू करने से पहले
इस दस्तावेज़ में बताए गए सबसे सही तरीके लागू करने से पहले, Firebase कंसोल में हर ऐप्लिकेशन के लिए App Distribution को चालू करना न भूलें. अगर आपने App Distribution को चालू नहीं किया है, तो आपको 404 गड़बड़ी का मैसेज मिलेगा.
App Distribution को चालू करने के लिए, यह तरीका अपनाएं:
- Firebase कंसोल में App Distribution पेज खोलें.
- अपना Android ऐप्लिकेशन चुनें.
- शुरू करें पर क्लिक करें.
Android ऐप्लिकेशन बंडल (AAB), Android पैकेज का सबसे आम फ़ॉर्मैट बनता जा रहा है. इसलिए, हमारा सुझाव है कि आप Google Play से लिंक करके, अपने टेस्टर को AAB उपलब्ध कराने की सुविधा सेट अप करें.
सीआई/सीडी पाइपलाइन का इस्तेमाल करके, रिलीज़ से पहले की टेस्टिंग के वर्कफ़्लो को ऑटोमेट करना
अगर आपको टेस्टर के लिए ऐप्लिकेशन बनाने और उन्हें रिलीज़ करने की प्रोसेस को ऑटोमेट करना है और सीआई/सीडी का इस्तेमाल किया जा रहा है, तो हमारा सुझाव है कि आप fastlane या Gradle का इस्तेमाल करें. दूसरा विकल्प, Firebase सीएलआई का इस्तेमाल करना है. इससे आपको Firebase के कई प्रॉडक्ट ऐक्सेस करने की सुविधा मिलती है.
fastlane का इस्तेमाल करना
fastlane का इस्तेमाल करके, App Distribution को अपनी सीआई/सीडी पाइपलाइन में इंटिग्रेट करें. यह एक ओपन सोर्स टूल है, जो iOS और Android ऐप्लिकेशन बनाने और उन्हें रिलीज़ करने की प्रोसेस को ऑटोमेट करता है. टेस्टर के लिए, अपनी नई रिलीज़ को अपने-आप बनने और उपलब्ध होने की सुविधा चालू करके, यह पक्का किया जा सकता है कि टेस्टर के पास हमेशा आपके ऐप्लिकेशन का सबसे अप-टू-डेट टेस्ट वर्शन हो.
App Distribution को fastlane के साथ इंटिग्रेट करने का तरीका जानने के लिए, fastlane का इस्तेमाल करके, टेस्टर के साथ Android ऐप्लिकेशन शेयर करना लेख पढ़ें.
Gradle का इस्तेमाल करना
App Distribution Gradle प्लगिन का इस्तेमाल करके, App Distribution को अपनी Android बिल्ड प्रोसेस में इंटिग्रेट करने के लिए, Gradle का इस्तेमाल करें. प्लग इन की मदद से, अपने ऐप्लिकेशन की build.gradle फ़ाइल में टेस्टर और रिलीज़ नोट की जानकारी दी जा सकती है. इससे आपको अपने ऐप्लिकेशन के अलग-अलग बिल्ड टाइप और वैरिएंट के लिए, डिस्ट्रिब्यूशन कॉन्फ़िगर करने की सुविधा मिलती है.
App Distribution को Gradle के साथ इंटिग्रेट करने का तरीका जानने के लिए, Gradle का इस्तेमाल करके, टेस्टर को Android ऐप्लिकेशन उपलब्ध कराना लेख पढ़ें.
Firebase सीएलआई का इस्तेमाल करना
App Distribution के उपलब्ध कराए गए Firebase सीएलआई टूल का इस्तेमाल करके, प्रोग्राम के हिसाब से टेस्टर को बिल्ड उपलब्ध कराएं. किसी बिल्ड के लिए, टेस्टर और रिलीज़ नोट तय किए जा सकते हैं.
ऐप्लिकेशन का 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 वर्कलोड चला सकता है. ज़्यादा जानने के लिए, सेवा खाते से पुष्टि करना लेख पढ़ें.
अगर Workload Identity फ़ेडरेशन का इस्तेमाल किया जा रहा है, तो सेवा खाते की कुंजी के बजाय, क्रेडेंशियल कॉन्फ़िगरेशन फ़ाइल जनरेट करके उसका इस्तेमाल किया जा सकता है.
रिलीज़ की सीमाओं को ध्यान में रखें
App Distribution में हर ऐप्लिकेशन के लिए, ज़्यादा से ज़्यादा 1,000 रिलीज़ सेव की जा सकती हैं. इसका मतलब है कि रिलीज़ की सीमा पार होने पर, App Distribution सबसे पुरानी रिलीज़ को अपने-आप मिटा देता है. ऐप्लिकेशन की रिलीज़ कितने समय तक उपलब्ध रहती हैं? लेख पढ़कर, रिलीज़ की सीमाओं को मैनेज करने का तरीका जानें
एक से ज़्यादा रिलीज़ में टेस्टर के एक ही सेट को जोड़ना
अगर आपको अपनी रिलीज़ में बड़ी संख्या में टेस्टर जोड़ने हैं, तो App Distribution की एक साथ कई टेस्टर मैनेज करने की सुविधा का इस्तेमाल करें.
हमारा सुझाव है कि एक ही टेस्टर को कई रिलीज़ में जोड़ने के लिए, ग्रुप का इस्तेमाल करें. ग्रुप, ऐक्सेस कंट्रोल लिस्ट की तरह काम करता है. किसी टेस्टर को ग्रुप से हटाने पर, उसके पास उस ग्रुप को डिस्ट्रिब्यूट की गई सभी रिलीज़ का ऐक्सेस नहीं रहता. ज़्यादा जानने के लिए, किसी ग्रुप में टेस्टर जोड़ना और हटाना लेख पढ़ें.
अगर आपको कई टेस्टर मैनेज करने हैं, तो Firebase console का इस्तेमाल करके, एक साथ कई टेस्टर जोड़े और मिटाए जा सकते हैं. टेस्टर को जोड़ने और हटाने की प्रोसेस को ऑटोमेट करने के लिए, Firebase सीएलआई, fastlane, Gradle या सार्वजनिक Firebase App Distribution एपीआई का इस्तेमाल करें.
टेस्टर की संख्या की सीमाएं ध्यान में रखें
App Distribution, Firebase प्रोजेक्ट या App Distribution ग्रुप में जोड़े जा सकने वाले टेस्टर की संख्या को सीमित करता है. इन सीमाओं को पार करने पर, आपके पास अपने ऐप्लिकेशन को अन्य टेस्टर के साथ शेयर करने का विकल्प नहीं होगा. टेस्टर की संख्या की सीमाओं के बारे में ज़्यादा जानने के लिए, क्या मेरे ऐप्लिकेशन में टेस्टर जोड़ने की कोई सीमा है? लेख पढ़ें
संभावित टेस्टर को टेस्टिंग के लिए खुद को रजिस्टर करने की सुविधा देना
हमारा सुझाव है कि आप न्योते के लिंक इस्तेमाल करें, ताकि ज़्यादा टेस्टर के साथ ऐप्लिकेशन को आसानी से शेयर किया जा सके. न्योते का लिंक एक यूनीक यूआरएल होता है. इसकी मदद से, टेस्टर अपने ईमेल पते डालकर, किसी ऐप्लिकेशन की टेस्टिंग के लिए साइन अप कर सकते हैं. उपयोगकर्ताओं को ऐप्लिकेशन टेस्टर की सूची में खुद को जोड़ने की सुविधा देने से, इंटरनल टेस्टिंग के लिए उपयोगकर्ताओं की संख्या को आसानी से बढ़ाया जा सकता है.
न्योते के लिंक का इस्तेमाल, कंपनी के डॉगफ़ूड प्रोग्राम, बड़ी QA टीमों वाले संगठनों, और डेवलपर ग्रुप के लिए किया जाता है. ये ग्रुप चाहते हैं कि उनके क्लाइंट, टेस्टर के ऐक्सेस को कंट्रोल कर सकें.
हमारा सुझाव है कि आप किसी ग्रुप के लिए न्योते का लिंक बनाएं. न्योते के लिंक का इस्तेमाल करके साइन अप करने वाला कोई भी टेस्टर, बाद में होने वाली रिलीज़ में अपने-आप जुड़ जाता है.
ज़्यादा जानने के लिए, न्योते के लिंक बनाना और किसी ग्रुप में टेस्टर जोड़ना और हटाना लेख पढ़ें.
पक्का करें कि टेस्टर, आपके चुने गए वर्शन की जांच कर रहे हों
जब कोई नया वर्शन अपलोड किया जाता है, तो आपके टेस्टर को ईमेल से इसकी सूचना दी जाती है. इस सूचना के अलावा, रिलीज़ लिंक और इन-ऐप्लिकेशन सूचनाओं जैसी सुविधाओं का इस्तेमाल किया जा सकता है. इससे यह पक्का किया जा सकता है कि टेस्टर, ऐप्लिकेशन के उसी वर्शन की जांच कर रहे हैं जिसकी आपको ज़रूरत है:
- रिलीज़ के लिंक: इस सुविधा का इस्तेमाल तब करें, जब आपको टेस्टर के साथ कोई खास वर्शन शेयर करना हो. रिलीज़ लिंक इस्तेमाल करने का तरीका जानने के लिए, Firebase कंसोल का इस्तेमाल करके, टेस्टर को Android ऐप्लिकेशन उपलब्ध कराना लेख पढ़ें. ये लिंक, हमारे Firebase, fastlane, और Gradle कमांड-लाइन (सीएलआई) टूल के साथ भी उपलब्ध हैं. इनका इस्तेमाल, बिल्ड ऑटोमेशन टूल के साथ किया जा सकता है.
- ऐप्लिकेशन में मिलने वाली सूचनाएं: इन सूचनाओं का इस्तेमाल तब करें, जब आपको यह पक्का करना हो कि टेस्टर आपके ऐप्लिकेशन के नए वर्शन की जांच कर रहे हैं. Firebase App Distribution Android SDK को इंटिग्रेट करके, ऐप्लिकेशन के नए बिल्ड उपलब्ध होने पर, टेस्टर को सीधे ऐप्लिकेशन में सूचनाएं दिखाई जा सकती हैं. ऐप्लिकेशन में सूचनाएं जोड़ने का तरीका जानने के लिए, टेस्टर को नए बिल्ड के बारे में सूचना देना लेख पढ़ें.
कंपनी छोड़ने वाले टेस्टर का ऐक्सेस अपने-आप हटाना
जब सीआई/सीडी इंटरनल टेस्टिंग फ़्लो सेट अप हो जाए और काम करने लगे, तो आपको यह पक्का करना होगा कि कंपनी छोड़ने वाले लोगों के पास आपके इंटरनल बिल्ड का ऐक्सेस न हो. बिल्ड के लिए टेस्टर के ऐक्सेस को मैनेज करने में आपकी मदद करने के लिए, App Distribution ये विकल्प उपलब्ध कराता है:
- fastlane: अपनी Fastfile फ़ाइल का इस्तेमाल करें या fastlane कार्रवाइयों को सीधे तौर पर चलाएं. ज़्यादा जानने के लिए, fastlane का इस्तेमाल करके, टेस्टर के साथ Android ऐप्लिकेशन शेयर करना लेख पढ़ें.
- Firebase सीएलआई:
firebase appdistribution:testers:removeकार्रवाई का इस्तेमाल करें. ज़्यादा जानने के लिए, Firebase सीएलआई का इस्तेमाल करके, टेस्टर को Android ऐप्लिकेशन उपलब्ध कराना लेख पढ़ें. - Gradle: अगर आपको Gradle का इस्तेमाल करके टेस्टर हटाने हैं, तो अपनी
build.gradleफ़ाइल मेंappDistributionRemoveTestersकोऔर--PROJECT_NUMBER आर्ग्युमेंट के साथ पास करें. ज़्यादा जानने के लिए, Gradle का इस्तेमाल करके, टेस्टर के साथ Android ऐप्लिकेशन शेयर करना लेख पढ़ें.--EMAILS - **सार्वजनिक
Firebase App Distribution एपीआई:
**
testers.batchRemoveएंडपॉइंट का इस्तेमाल करें.