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


इस गाइड में, Firebase CLI का इस्तेमाल करके, टेस्टर को APK डिस्ट्रिब्यूट करने का तरीका बताया गया है. सीएलआई टूल की मदद से, किसी बिल्ड के लिए टेस्टर और रिलीज़ नोट तय किए जा सकते हैं. इसके बाद, यह टूल बिल्ड को उसी के मुताबिक डिस्ट्रिब्यूट करता है.

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

अगर आपने पहले से ऐसा नहीं किया है, तो अपने Android प्रोजेक्ट में Firebase जोड़ें.

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

पहला चरण. अपना ऐप्लिकेशन बनाना

जब आपको टेस्टर के साथ अपने ऐप्लिकेशन का प्री-रिलीज़ वर्शन शेयर करना हो, तब सामान्य प्रोसेस का इस्तेमाल करके अपना APK बनाएं. आपको APK पर, डीबग कुंजी या ऐप्लिकेशन साइनिंग कुंजी से हस्ताक्षर करना होगा.

दूसरा चरण. अपने ऐप्लिकेशन को टेस्टर के साथ शेयर करना

टेस्टर के साथ ऐप्लिकेशन डिस्ट्रिब्यूट करने के लिए, Firebase CLI का इस्तेमाल करके ऐप्लिकेशन की फ़ाइल अपलोड करें:

  1. Firebase सीएलआई का नया वर्शन इंस्टॉल करें या उसे अपडेट करें (हमारा सुझाव है कि आप अपने ओएस के लिए, सीएलआई का स्टैंडअलोन बाइनरी डाउनलोड करें). पक्का करें कि आपने साइन इन किया हो और यह जांच लें कि आपके पास अपने प्रोजेक्ट ऐक्सेस करने की अनुमति है.
  2. अपने ऐप्लिकेशन को अपलोड करने और उसे टेस्टर के साथ शेयर करने के लिए, appdistribution:distribute कमांड चलाएं. डिस्ट्रिब्यूशन को कॉन्फ़िगर करने के लिए, इन पैरामीटर का इस्तेमाल करें:

    appdistribution:distribute विकल्प
    --app

    ज़रूरी है: आपके ऐप्लिकेशन का Firebase ऐप्लिकेशन आईडी. आपको ऐप्लिकेशन आईडी, Firebase कंसोल में सामान्य सेटिंग पेज पर मिलेगा.

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

    यह एक रीफ़्रेश टोकन है. इसे तब प्रिंट किया जाता है, जब Firebase CLI का इस्तेमाल करके अपने सीआई एनवायरमेंट की पुष्टि की जाती है. ज़्यादा जानकारी के लिए, सीआई सिस्टम के साथ सीएलआई का इस्तेमाल करना पढ़ें.

    --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.apk  \
        --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 का इस्तेमाल करके, टेस्टर भी तय किए जा सकते हैं.

    अगर आपके पास जांचकर्ताओं की बड़ी संख्या है, तो आपको ग्रुप का इस्तेमाल करना चाहिए: अपने Firebase प्रोजेक्ट में ग्रुप बनाने या मिटाने के लिए, appdistribution:group:create और appdistribution:group:delete का इस्तेमाल किया जा सकता है.

    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

अपनी बिल्ड को डिस्ट्रिब्यूट करने के बाद, यह App Distribution कंसोल के Firebase डैशबोर्ड में 150 दिनों (पांच महीने) तक उपलब्ध रहती है. जब बिल्ड की समयसीमा खत्म होने में 30 दिन बाकी होते हैं, तब समयसीमा खत्म होने की सूचना, कंसोल और टेस्टर के टेस्ट डिवाइस पर मौजूद बिल्ड की सूची, दोनों में दिखती है.

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

टेस्टर के पास, ऐप्लिकेशन को टेस्ट करने के न्योते को स्वीकार करने के लिए 30 दिन होते हैं. इसके बाद, न्योते की समयसीमा खत्म हो जाती है. जब न्योते की समयसीमा खत्म होने में पांच दिन बाकी होते हैं, तब रिलीज़ पर टेस्टर के बगल में Firebase कंसोल में, समयसीमा खत्म होने की सूचना दिखती है. टेस्टर की लाइन में मौजूद ड्रॉप-डाउन मेन्यू का इस्तेमाल करके, न्योते को फिर से भेजा जा सकता है.

अगले चरण