App Distribution और फ़ास्टलेन की मदद से, अपने रिलीज़ से पहले के iOS बिल्ड तेज़ी से डिस्ट्रिब्यूट करें

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

4cddd34bd261cea0.png

इस कोडलैब में, आपको यह तरीका बताया जाएगा: Firebase App Distribution और इसके fastlane प्लगिन का इस्तेमाल करके, टेस्टर को iOS ऐप्लिकेशन डिस्ट्रिब्यूट करना, टेस्ट डिवाइस के यूडीआईडी इकट्ठा करना, और उन्हें अपने ऐप्लिकेशन की प्रोविज़निंग प्रोफ़ाइल में रजिस्टर करना. इससे, आपको टेस्टर को Ad Hoc बिल्ड तुरंत उपलब्ध कराने में मदद मिलेगी.

आपको क्या सीखने को मिलेगा

  • Firebase App Distribution और fastlane का इस्तेमाल करके, टेस्टर को रिलीज़ से पहले का iOS ऐप्लिकेशन (Ad Hoc) अपलोड और डिस्ट्रिब्यूट करने का तरीका.
  • टेस्टर के तौर पर साइन अप करने और टेस्ट डिवाइस पर डिस्ट्रिब्यूट किया गया ऐप्लिकेशन डाउनलोड करने का तरीका.
  • App Distribution के fastlane प्लगिन की मदद से, टेस्ट डिवाइसों के यूडीआईडी एक्सपोर्ट करके, उन्हें तुरंत रजिस्टर करने का तरीका.
  • ऐप्लिकेशन की प्रोविज़निंग प्रोफ़ाइल को अपडेट करने और उसे डिस्ट्रिब्यूशन के लिए फिर से अपलोड करने का तरीका.

आपको इनकी ज़रूरत होगी

  • Google खाता
  • Apple का ऐसा डिवाइस जिस पर XCode 11.7 या इसके बाद का वर्शन इंस्टॉल हो
  • Xcode में बनाया गया, ऐड हॉक प्री-रिलीज़ iOS ऐप्लिकेशन
  • पैसे चुकाकर लिया गया Apple Developer खाता
  • टेस्टिंग के लिए, iOS डिवाइस.

iOS सिम्युलेटर ऐप्लिकेशन, ज़्यादातर कोडलैब के लिए काम करेगा. हालांकि, सिम्युलेटर रिलीज़ डाउनलोड नहीं कर सकते.

हालांकि, अब भी यह पुष्टि की जा सकती है कि सेटअप काम कर रहा है. इसके लिए, यह पुष्टि करें कि App Distribution के टेस्टर वेब ऐप्लिकेशन पर "डाउनलोड करें" बटन दिख रहा हो.

2. शुरू करें

fastlane सेट अप करना

App Distribution, fastlane के साथ इंटिग्रेट होता है. इससे, आपको अपने ऐप्लिकेशन के रिलीज़ से पहले वाले वर्शन को अपने-आप डिस्ट्रिब्यूट करने की सुविधा मिलती है. App Distribution, आपके fastlane कॉन्फ़िगरेशन के साथ इंटिग्रेट होता है.

  1. fastlane को इंस्टॉल और सेट अप करें.
  2. सेटअप के दौरान, अपने प्रोजेक्ट की रूट डायरेक्ट्री में fastlane init चलाएँ. इसके बाद, "मैन्युअल सेटअप" चुनें. आपको fastlane नाम की एक सबडायरेक्ट्री दिखेगी. इसमें Fastfile, Appfile, और Pluginfile शामिल होंगे. इनका इस्तेमाल fastlane को कॉन्फ़िगर करने के लिए किया जाएगा.

Firebase CLI इंस्टॉल करना

आपको Firebase CLI भी इंस्टॉल करना होगा. अगर macOS या Linux का इस्तेमाल किया जा रहा है, तो यह cURL कमांड चलाएं:

curl -sL https://firebase.tools | bash

अगर Windows का इस्तेमाल किया जा रहा है, तो स्टैंडअलोन बाइनरी पाने या npm के ज़रिए इंस्टॉल करने के लिए, इंस्टॉल करने के निर्देश पढ़ें.

सीएलआई इंस्टॉल करने के बाद, firebase --version चलाने पर, 12.0.0 या उसके बाद के वर्शन की रिपोर्ट मिलनी चाहिए:

$ firebase --version
12.0.0

3. fastlane की मदद से ऐप्लिकेशन बनाना

अपना ऐप्लिकेशन बनाना

  1. अपने ./fastlane/Appfile. में fastlane के लिए कुछ ग्लोबल वैरिएबल सेट करें. इसमें अपने ऐप्लिकेशन का आईडी और Apple आईडी शामिल करें:
app_identifier("<your app's bundle identifier>")
apple_id("<your Apple id>")
  1. अपनी पहली लेन बनाएं और fastlane के build_app ऐक्शन (इसे gym भी कहा जाता है) का इस्तेमाल करके अपना ऐप्लिकेशन बनाएं. इसके लिए, अपनी ./fastlane/Fastfile में ये चीज़ें जोड़ें:
default_platform(:ios)

lane :build do
    build_app(export_method: "ad-hoc")
end
  1. डिस्ट्रिब्यूशन के लिए अपने ऐप्लिकेशन पर साइन करें.

इस कोडलैब के लिए, आपको अपने सर्टिफ़िकेट और प्रोफ़ाइल को मैनेज करना होगा. इसके लिए, get_certificates (इसे cert भी कहा जाता है) का इस्तेमाल करें. यह स्थानीय तौर पर साइनिंग सर्टिफ़िकेट जनरेट करता है और सभी चीज़ें आपके macOS Keychain में सेव करता है. हालांकि, आम तौर पर आपको अपनी टीम के कोड साइनिंग सर्टिफ़िकेट और प्रोफ़ाइलों को सुरक्षित तरीके से मैनेज करने के लिए, fastlane sync_code_signing action (इसे match भी कहा जाता है) का इस्तेमाल करना चाहिए.

lane :build do
    get_certificates()
    build_app(export_method: "ad-hoc")
end
  1. get_provisioning_profile कार्रवाई (इसे sigh भी कहा जाता है) का इस्तेमाल करके, अपने ऐप्लिकेशन के लिए प्रोविज़निंग प्रोफ़ाइल सेट अप करें. इससे, टेस्टर के साथ अपना ऐप्लिकेशन शेयर किया जा सकता है.
lane :build do
    get_certificates()
    get_provisioning_profile(adhoc: true)
    build_app(export_method: "ad-hoc")
end
  1. [ज़रूरी नहीं] अगर आपने पहले कभी अपना ऐप्लिकेशन नहीं चलाया है, तो Apple डेवलपर कंसोल में अपना ऐप्लिकेशन बनाने के लिए, यह निर्देश चलाएं:

$ fastlane produce --skip_itc

  1. आखिर में, लेन चलाकर अपना ऐप्लिकेशन बनाएं.

आपको अपना Apple ID, पासवर्ड (जो आपके Keychain में सेव होता है) और ऐप्लिकेशन का बंडल आईडी डालने के लिए कहा जाएगा.

$ fastlane build

अगर आपको कोई समस्या आती है, तो कृपया fastlane की समस्या हल करने की गाइड देखें.

4. अपने ऐप्लिकेशन को Firebase पर अपलोड करना

अब जब आपने अपना ऐप्लिकेशन बना लिया है, तो उसे App Distribution पर अपलोड किया जा सकता है.

नया Firebase प्रोजेक्ट बनाना

  1. अपने Google खाते का इस्तेमाल करके, Firebase कंसोल में साइन इन करें.
  2. नया प्रोजेक्ट बनाने के लिए बटन पर क्लिक करें. इसके बाद, प्रोजेक्ट का नाम डालें. उदाहरण के लिए, UDID Export Codelab.
  3. जारी रखें पर क्लिक करें.
  4. अगर आपसे कहा जाए, तो Firebase की शर्तें पढ़ें और स्वीकार करें. इसके बाद, जारी रखें पर क्लिक करें.
  5. (ज़रूरी नहीं) Firebase कंसोल में एआई की मदद पाने की सुविधा चालू करें. इसे "Firebase में Gemini" कहा जाता है.
  6. इस कोडलैब के लिए, आपको Google Analytics की ज़रूरत नहीं है. इसलिए, Google Analytics के विकल्प को टॉगल करके बंद करें.
  7. प्रोजेक्ट बनाएं पर क्लिक करें. इसके बाद, प्रोजेक्ट के प्रोविज़न होने का इंतज़ार करें. इसके बाद, जारी रखें पर क्लिक करें.

प्रोजेक्ट में अपना iOS ऐप्लिकेशन जोड़ना

  1. नया Firebase iOS ऐप्लिकेशन बनाने के लिए, iOS आइकॉन पर क्लिक करें. इसके बाद, अपने ऐप्लिकेशन का बंडल आईडी डालें.

9c26c130a6c42212.png

  1. अगले कुछ चरणों को छोड़ें. इसके बाद, कंसोल पर जाएं पर क्लिक करें. ऐप्लिकेशन में एसडीके बाद में जोड़े जाएंगे.

आपका प्रोजेक्ट और ऐप्लिकेशन अब प्रोजेक्ट की खास जानकारी पेज पर उपलब्ध है.

66f79cc8a97fa8e9.png

App Distribution चालू करना

  1. 'रिलीज़ और मॉनिटर करें' सेक्शन में जाकर, ऐप्लिकेशन डिस्ट्रिब्यूशन पर क्लिक करें.
  2. शर्तें स्वीकार करने के बाद, अपने ऐप्लिकेशन के लिए App Distribution की सुविधा चालू करने के लिए, "शुरू करें" पर क्लिक करें.

460213326c2784ae.png

fastlane में डिस्ट्रिब्यूशन सेट अप करना

  1. अपने iOS प्रोजेक्ट के रूट से, यहां दिया गया कमांड चलाएं. इससे App Distribution को fastlane कॉन्फ़िगरेशन में जोड़ा जा सकेगा.

अगर कमांड आपको कोई विकल्प चुनने के लिए कहती है, तो Option 3: RubyGems.org चुनें:

$ fastlane add_plugin firebase_app_distribution

  1. पुष्टि करें कि प्लगिन इंस्टॉल हो:

$ fastlane

आउटपुट में, इंस्टॉल किए गए प्लगिन की सूची में fastlane-plugin-firebase_app_distribution दिखना चाहिए.

  1. प्लगिन इंस्टॉल होने की पुष्टि करने के बाद, सदस्यता रद्द करने के लिए विकल्प 0 चुनें.

अपने Firebase प्रोजेक्ट की पुष्टि करना

fastlane प्लगिन का इस्तेमाल करने के लिए, आपको सबसे पहले अपने Firebase प्रोजेक्ट की पुष्टि करनी होगी.

  1. सीएलआई को अपने Google खाते से कनेक्ट करने के लिए, यह कमांड चलाएं:

$ firebase login

  1. जब कमांड से पुष्टि करने वाला लिंक प्रिंट हो जाए, तो उसे ब्राउज़र में खोलें.
  2. जब आपसे कहा जाए, तब अपने Google खाते में साइन इन करें और अपने Firebase प्रोजेक्ट को ऐक्सेस करने की अनुमति दें.

अपना ऐप्लिकेशन उपलब्ध कराना

अब आपका ऐप्लिकेशन डिस्ट्रिब्यूट करने के लिए तैयार है.

  1. अपने ./fastlane/Fastfile के सबसे ऊपर, firebase_app_id नाम का वैरिएबल तय करें. <your_app_id> की जगह, बनाए गए ऐप्लिकेशन का Firebase ऐप्लिकेशन आईडी डालें. यह आईडी, प्रोजेक्ट सेटिंग पेज पर देखा जा सकता है.

Fastfile को Ruby में लिखा गया है. इसलिए, वैरिएबल तय करने के लिए Ruby सिंटैक्स का इस्तेमाल करें.

firebase_app_id = "<your_app_id>"
  1. distribute नाम की एक नई लेन जोड़ें. यह लेन, बिल्ड लेन को कॉल करती है. इसके बाद, firebase_app_distribution ऐक्शन का इस्तेमाल करके, आपके ऐप्लिकेशन को डिस्ट्रिब्यूट करती है.
lane :distribute do
    build
    firebase_app_distribution(
        app: firebase_app_id,
        release_notes: "Try out this app!",
    )
end
  1. अपने ऐप्लिकेशन को बनाने और उसे डिस्ट्रिब्यूट करने के लिए, नई लेन चलाएं.

$ fastlane distribute

इस समय, आपकी Fastfile ऐसी दिखनी चाहिए:

firebase_app_id = "<your Firebase app ID>"

default_platform(:ios)

lane :build do
    get_certificates()
    get_provisioning_profile(adhoc: true)
    build_app(export_method: "ad-hoc")
end

lane :distribute do
    build
    firebase_app_distribution(
        app: firebase_app_id,
        release_notes: "Try out this app!",
    )
end

Firebase कंसोल को रीफ़्रेश करने के बाद, आपको अपने ऐप्लिकेशन के लिए नई रिलीज़ दिखेगी.

c59dc1a94de3bf3c.png

5. टेस्टर को अपना ऐप्लिकेशन डाउनलोड करने का न्योता देना

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

रिलीज़ के लिए, खुद को टेस्टर के तौर पर जोड़ना

  1. अपनी Fastfile में सबसे ऊपर मौजूद firebase_app_id के नीचे, टेस्टर के लिए एक वैरिएबल बनाएं. इसमें अपना ईमेल पता और अन्य वैकल्पिक ईमेल पते शामिल करें.
firebase_app_id = "<your Firebase app ID>"
app_testers = [
  "your@email.com",
  "another@email.com",
]
  1. app_testers अरे को कॉमा लगाकर अलग की गई स्ट्रिंग में बदलने के लिए, Ruby के Array#join तरीके का इस्तेमाल करें. testers पैरामीटर को इसकी ज़रूरत होती है. इसके बाद, नतीजे को firebase_app_distribution. के testers पैरामीटर में पास करें
lane :distribute do
    build
    firebase_app_distribution(
        app: firebase_app_id,
        release_notes: "Try out this app!"
        testers: app_testers.join(","),
    )
end

इस समय, आपकी Fastfile ऐसी दिखनी चाहिए:

firebase_app_id = "<your Firebase app ID>"
app_testers = [
  "your@email.com",
  "another@email.com",
]

default_platform(:ios)

lane :build do
    get_certificates()
    get_provisioning_profile(adhoc: true)
    build_app(export_method: "ad-hoc")
end

lane :distribute do
    build
    firebase_app_distribution(
        app: firebase_app_id,
        release_notes: "Try out this app!",
        testers: app_testers.join(","),
    )
end
  1. लेन को फिर से चलाएं.

$ fastlane distribute

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

2e0fc9603b868af8.png

आपने अपना ईमेल पता शामिल किया है. इसलिए, आपको Firebase App Distribution से एक ईमेल मिलेगा. इसमें आपको ऐप्लिकेशन को टेस्ट करने का न्योता दिया जाएगा. अब आप पहले टेस्टर हैं! अपने टेस्ट डिवाइस पर टेस्टर के तौर पर सेट अप करने के लिए, यहां दिया गया तरीका अपनाएं.

अपने टेस्ट डिवाइस को रजिस्टर करना

टेस्टर के तौर पर, आपको अपने टेस्ट डिवाइस पर Google में साइन इन करना होगा. इससे आपको उन ऐप्लिकेशन रिलीज़ को ऐक्सेस करने में मदद मिलेगी जिन्हें टेस्ट करने के लिए आपको न्योता दिया गया है. आपकी टेस्ट बिल्ड, Ad Hoc रिलीज़ है. इसलिए, आपको Firebase प्रोफ़ाइल इंस्टॉल करके, अपने टेस्ट डिवाइस को भी रजिस्टर करना होगा. इसके बाद, आपके लिए उपलब्ध रिलीज़ को App Distribution टेस्टर वेब ऐप्लिकेशन से ऐक्सेस किया जा सकता है. इसके लिए, आपको अपने डिवाइस की होम स्क्रीन पर जोड़े गए वेब क्लिप का इस्तेमाल करना होगा.

  1. अपने iOS टेस्ट डिवाइस पर, Firebase App Distribution से भेजा गया ईमेल खोलें. इसके बाद, शुरू करें लिंक पर टैप करें. पक्का करें कि आपने लिंक को Safari में खोला हो.
  2. अब आप App Distribution के टेस्टर वेब ऐप्लिकेशन में हैं. दिखने वाले पेज पर, अपने Google खाते से साइन इन करें और न्योता स्वीकार करें पर टैप करें.

d833407de251b89f.png

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

fd141215e54a938d.png

  1. जब आपसे कहा जाए, तब Firebase प्रोफ़ाइल डाउनलोड करें. इसके बाद, Settings ऐप्लिकेशन में प्रोफ़ाइल इंस्टॉल करें.

प्रोफ़ाइल इंस्टॉल करने से, Firebase को ये अनुमतियां मिलती हैं:

  • डिवाइस के यूनीक डिवाइस आईडी (यूडीआईडी) को इकट्ठा करके, टेस्ट डिवाइस को रजिस्टर करें.

Firebase, Firebase प्रोजेक्ट के सभी मालिकों और संपादकों को एक ईमेल भेजता है. इसमें टेस्ट डिवाइस का यूडीआईडी शामिल होता है.

  • टेस्ट डिवाइस की होम स्क्रीन पर वेब क्लिप इंस्टॉल करें. वेब क्लिप से, App Distribution Tester का वेब ऐप्लिकेशन खुलता है. इसकी मदद से, अपने सभी टेस्ट ऐप्लिकेशन इंस्टॉल और ऐक्सेस किए जा सकते हैं.

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

fe93d649dfa25877.png

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

7b9f665a63a384cf.png

अगले सेक्शन में, आपको डिवाइस के यूडीआईडी को अपने ऐप्लिकेशन की प्रोविज़निंग प्रोफ़ाइल में जोड़ना होगा. इसके बाद, आपको अपने ऐप्लिकेशन का ऐसा वर्शन बनाना होगा जो आपके टेस्ट डिवाइस के साथ काम करे.

टेस्टर डिवाइस के यूडीआईडी एक्सपोर्ट करना

डेवलपर के तौर पर, आपको Firebase से एक ईमेल मिलेगा. इसमें टेस्ट डिवाइस का यूडीआईडी होगा. App Distribution की मदद से, एक साथ कई नए डिवाइसों के यूडीआईडी इकट्ठा करना आसान हो जाता है. इसके लिए, आपको उन्हें सीधे Firebase कंसोल से रॉ टेक्स्ट फ़ाइल के तौर पर एक्सपोर्ट करना होता है.

  1. सभी यूडीआईडी एक्सपोर्ट करने के लिए, टेस्टर और ग्रुप टैब खोलें.

241a9936898a2fc0.png

  1. Apple UDID एक्सपोर्ट करें पर क्लिक करें.

bcf0c26c522d9b4e.png

फ़ाइल में आपके टेस्ट डिवाइस का यूडीआईडी होना चाहिए.

Device ID            Device Name                            Device Platform
1234567890     udid.codelab.tester@gmail.com - iPhone SE 2nd Gen        ios

यूडीआईडी को कमांड लाइन से भी एक्सपोर्ट किया जा सकता है. इसके लिए, fastlane का इस्तेमाल करें. इसके बारे में अगले सेक्शन में बताया गया है.

6. अपने ऐप्लिकेशन की प्रोफ़ाइल उपलब्ध कराने की सुविधा को अपडेट करें और उसे फिर से बनाएं

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

UDID एक्सपोर्ट लेन जोड़ें

  1. अपनी Fastfile के सबसे ऊपर एक और वैरिएबल जोड़ें. साथ ही, इसे उस फ़ाइल पाथ पर सेट करें जहां आपके टेस्टर के डिवाइस के यूडीआईडी डाउनलोड किए जाएंगे.
firebase_app_id = "<your Firebase app ID>"
app_testers = [
  "your@email.com",
  "another@email.com",
]
tester_udids_file = "tester_udids.txt"
  1. एक नई लेन सेट अप करें. इसमें App Distribution प्लगिन के यूडीआईडी एक्सपोर्ट करने वाले ऐक्शन का इस्तेमाल करके, टेस्टर के यूडीआईडी डाउनलोड किए जा सकते हैं. ठीक वैसे ही जैसे आपने कंसोल से किए थे.
lane :download_udids do
    firebase_app_distribution_get_udids(
        app: firebase_app_id,
        output_file: tester_udids_file,
    )
end
  1. यूडीआईडी डाउनलोड करने के लिए, यह लेन चलाएं.

$ fastlane download_udids

  1. डाउनलोड की गई फ़ाइल को प्रिंट करें. इसमें टेस्ट डिवाइस के यूडीआईडी होने चाहिए.

$ cat tester_udids.txt

Apple Developer Console में डिवाइस जोड़ना

  1. Apple डेवलपर कंसोल में, अपने डिवाइसों की सूची में यूडीआईडी जोड़ने के लिए, यह लेन बनाएं. इससे fastlane's register_devices कार्रवाई का इस्तेमाल करके, उन्हें अपनी प्रोविज़निंग प्रोफ़ाइल में जोड़ा जा सकेगा:
lane :add_new_devices do
    register_devices(devices_file: tester_udids_file)
end
  1. इसके बाद, लेन चलाएं:

$ fastlane add_new_devices

इसके बाद, आपको डेवलपर कंसोल में डिवाइसों की सूची में नए डिवाइस दिखने चाहिए.

अपनी प्रोविज़निंग प्रोफ़ाइल में डिवाइस जोड़ना

  1. build लेन में, प्रोविज़निंग प्रोफ़ाइल वाले चरण में force आर्ग्युमेंट जोड़ें, ताकि हर बार बिल्ड करने पर, यह नए डिवाइसों को चुन सके.
lane :build do
    get_certificates()
    get_provisioning_profile(adhoc: true, force: true)
    build_app(export_method: "ad-hoc")
end

बनाने और अपलोड करने के लिए, लेन को फिर से चलाएं

अब, आपको अपनी distribute लेन को नई लेन से अपडेट करना होगा, ताकि डिवाइसों को प्रोविज़निंग प्रोफ़ाइल में जोड़ा जा सके. इसके बाद, ऐप्लिकेशन को फिर से बनाना होगा और उसे डिस्ट्रिब्यूट करना होगा.

  1. distribute से नई लेन को कॉल करें:
lane :distribute do
    download_udids
    add_new_devices
    build
    firebase_app_distribution(
        app: "1:123456789:ios:abcd1234",
        release_notes: "Try out this app!"
        testers: app_testers.join(","),
    )
end
  1. distribute लेन चलाएं:

$ fastlane distribute

इस समय, आपकी Fastfile ऐसी दिखनी चाहिए:

firebase_app_id = "<your Firebase app ID>"
app_testers = [
  "your@email.com",
  "another@email.com",
]
tester_udids_file = "tester_udids.txt"

default_platform(:ios)

lane :build do
    get_certificates()
    get_provisioning_profile(adhoc: true, force: true)
    build_app(export_method: "ad-hoc")
end

lane :distribute do
    download_udids
    add_new_devices
    build
    firebase_app_distribution(
        app: firebase_app_id,
        release_notes: "Try out this app!",
        testers: app_testers.join(","),
    )
end

lane :download_udids do
    firebase_app_distribution_get_udids(
        app: firebase_app_id,
        output_file: tester_udids_file,
    )
end

lane :add_new_devices do
    register_devices(devices_file: tester_udids_file)
end

टेस्ट डिवाइस पर रिलीज़ डाउनलोड करना

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

e275f73d57cc8fb1.png

  1. अपने टेस्ट डिवाइस पर, ईमेल में दिए गए लिंक या डिवाइस की होम स्क्रीन पर मौजूद आइकॉन का इस्तेमाल करके, App Distribution टेस्टर वेब ऐप्लिकेशन पर वापस जाएं.

UDID कोडलैब ऐप्लिकेशन पर जाने पर, आपको दिखेगा कि रिलीज़ डाउनलोड करने के लिए तैयार है.

dad6d03b6ad78746.png

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

7. बधाई

आपने अब App Distribution और fastlane को कॉन्फ़िगर कर लिया है. इससे, रिलीज़ से पहले टेस्टिंग की प्रोसेस को अपने-आप पूरा किया जा सकेगा. अब अगर आपको अन्य टेस्टर को न्योता भेजना है या उनके यूडीआईडी को अपने ऐप्लिकेशन में जोड़ना है, तो आपको सिर्फ़ एक कमांड चलानी होगी: fastlane distribute.

इसलिए, अब टेस्टर से अलग-अलग यूडीआईडी इकट्ठा करने या डिवाइसों की सूचियां या प्रोविज़निंग प्रोफ़ाइल अपडेट करने के लिए, Apple डेवलपर कंसोल पर जाने की ज़रूरत नहीं है. आपको XCode खोलने की भी ज़रूरत नहीं है!

इस वर्कफ़्लो को लगातार इंटिग्रेशन वाले माहौल में, हर घंटे या हर दिन चलाने के लिए आसानी से सेट अप किया जा सकता है.

इस बारे में और पढ़ें