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


इस गाइड में, Firebase सीएलआई का इस्तेमाल करके, टेस्टर को Android ऐप्लिकेशन बंडल (एएबी) डिस्ट्रिब्यूट करने का तरीका बताया गया है. सीएलआई टूल से, आपको टेस्टर और बिल्ड के लिए रिलीज़ नोट का इस्तेमाल करता है. इसके बाद, बिल्ड को उसके हिसाब से डिस्ट्रिब्यूट किया जाता है.

App Distribution, Google Play की संगठन में काम करने वालों के साथ ऐप्लिकेशन शेयर करने की सुविधा के साथ इंटिग्रेट करता है आपके अपलोड किए गए एएबी को प्रोसेस करता है और उन APKs को उपलब्ध कराता है जो आपके टेस्टर के लिए ऑप्टिमाइज़ होते हैं डिवाइस कॉन्फ़िगरेशन. AABs डिस्ट्रिब्यूट करने से, ये काम किए जा सकते हैं:

  • Google Play से मिलने वाले, टेस्टर के डिवाइसों के हिसाब से ऑप्टिमाइज़ किए गए APK चलाएं.

  • डिवाइस से जुड़ी समस्याओं का पता लगाना और उन्हें डीबग करना.

  • ऐप्लिकेशन बंडल की सुविधाओं की जांच करें, जैसे कि Play की सुविधाओं की डिलीवरी और Play ऐसेट डिलीवरी शामिल है.

  • अपने ऐप्लिकेशन के टेस्टर के लिए, डाउनलोड का साइज़ कम करें.

ज़रूरी अनुमतियां

App Distribution पर AAB अपलोड करने के लिए, आपको अपने Firebase ऐप्लिकेशन को Google Play में मौजूद ऐप्लिकेशन से लिंक करना होगा. ये कार्रवाइयां करने के लिए, आपके पास ज़रूरी ऐक्सेस लेवल होना चाहिए.

अगर आपके पास Firebase का ज़रूरी ऐक्सेस नहीं है, तो आप Firebase प्रोजेक्ट से ऐसा करने का अनुरोध कर सकते हैं इसके ज़रिए, आपको लागू होने वाली भूमिका असाइन करेगा: Firebase कंसोल की IAM सेटिंग. अगर Firebase प्रोजेक्ट को ऐक्सेस करने के बारे में आपका कोई सवाल है, तो असाइन करने या ढूंढने के लिए, "Firebase प्रोजेक्ट की अनुमतियां और ऐक्सेस" अक्सर पूछे जाने वाले सवाल.

नीचे दी गई टेबल, Google Play में मौजूद किसी ऐप्लिकेशन को Firebase ऐप्लिकेशन से लिंक करने के साथ-साथ, AAB अपलोड करने पर लागू होती है.

Firebase कंसोल में कार्रवाई ज़रूरी IAM अनुमति आईएएम की ऐसी भूमिकाएं जिनमें इनके लिए ज़रूरी अनुमतियां शामिल होती हैं डिफ़ॉल्ट ज़रूरी अन्य भूमिकाएं
Google Play में, Firebase के ऐप्लिकेशन को किसी ऐप्लिकेशन से लिंक करना firebase.playLinks.update इनमें से कोई एक भूमिका: Google Play डेवलपर खाते का ऐक्सेस, एडमिन के तौर पर
App Distribution पर एएबी अपलोड करना firebaseappdistro.releases.update इनमें से कोई एक भूमिका: ––

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

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

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

  2. Google Play से Firebase लिंक बनाने और एएबी अपलोड करने के लिए, पक्का करें कि आपका ऐप्लिकेशन इन ज़रूरी शर्तों को पूरा करता है:

    • Google Play और Firebase का Android ऐप्लिकेशन, दोनों रजिस्टर किए गए हों पैकेज नाम का ही इस्तेमाल करें.

    • Google Play में मौजूद ऐप्लिकेशन को ऐप्लिकेशन पर सेट अप किया गया हो डैशबोर्ड और उसे Google Play के किसी एक ट्रैक (इंटरनल टेस्टिंग, क्लोज़्ड टेस्टिंग, ओपन टेस्टिंग या प्रोडक्शन).

    • Google Play पर ऐप्लिकेशन की समीक्षा पूरी हो गई हो और ऐप्लिकेशन पब्लिश हो गया हो. अगर ऐप्लिकेशन का स्टेटस कॉलम में इनमें से कोई एक स्टेटस दिखता है, तो इसका मतलब है कि आपका ऐप्लिकेशन पब्लिश हो गया है: इंटरनल टेस्टिंग (ड्राफ़्ट की इंटरनल टेस्टिंग नहीं), क्लोज़्ड टेस्टिंग, ओपन टेस्टिंग या प्रोडक्शन.

  3. अपने Firebase के Android ऐप्लिकेशन को Google Play डेवलपर खाते से जोड़ें:

    1. Firebase कंसोल में, अपने प्रोजेक्ट सेटिंग पर जाएं. इसके बाद, इंटिग्रेशन टैब चुनें.

    2. Google Play कार्ड पर जाकर, जोड़ें पर क्लिक करें.
      अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है अगर आपके पास पहले से ही Google Play के लिंक हैं, तो मैनेज करें पर क्लिक करें आज़माएं.

    3. App Distribution इंटिग्रेशन को चालू करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें. साथ ही, यह चुनें कि किन Firebase Android ऐप्लिकेशन को Google Play से लिंक करना है.

    इसके बारे में ज़्यादा जानें Google Play से लिंक करना.

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

जब आप टेस्टर के लिए, अपने ऐप्लिकेशन का रिलीज़ से पहले का वर्शन उपलब्ध कराने के लिए तैयार हों, अपना एएबी बनाएं (इस पर जाएं Android Studio के दस्तावेज़ देखें).

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

टेस्टर को अपना ऐप्लिकेशन उपलब्ध कराने के लिए, इसकी मदद से अपने ऐप्लिकेशन की फ़ाइल अपलोड करें Firebase सीएलआई:

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

    ऐप्लिकेशनडिस्ट्रिब्यूशन:डिस्ट्रिब्यूट के विकल्प
    --app

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

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

    सीआई की पुष्टि करते समय प्रिंट हुआ रीफ़्रेश टोकन Firebase सीएलआई वाला वातावरण (पढ़ें सीआई के साथ सीएलआई का इस्तेमाल करें सिस्टम देखें).

    --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.aab  \
        --app 1:1234567890:android:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt

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

    • 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

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

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

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

अगले चरण