1 अवलोकन
आपके Android ऐप कोडलैब में Firebase ऐप वितरण SDK को एकीकृत करने में आपका स्वागत है। इस कोडलैब में, आप अपने ऐप में ऐप वितरण Android SDK जोड़ेंगे ताकि नए बिल्ड डाउनलोड करने के लिए उपलब्ध होने पर अपने परीक्षकों को इन-ऐप अलर्ट प्रदर्शित कर सकें। आप अपने परीक्षकों को अपडेट प्राप्त करने के लिए साइन इन करने के लिए बुनियादी कॉन्फ़िगरेशन और कस्टम कॉन्फ़िगरेशन दोनों का उपयोग करने का तरीका जानेंगे. फिर आप ऐप डिस्ट्रीब्यूशन के लिए एक नई रिलीज़ पुश करेंगे और ऐप में ही एक नया बिल्ड अलर्ट ट्रिगर करेंगे।
आप क्या सीखेंगे
- परीक्षकों को रिलीज़-पूर्व ऐप वितरित करने के लिए ऐप वितरण का उपयोग कैसे करें
- ऐप वितरण Android SDK को अपने ऐप में कैसे एकीकृत करें
- जब कोई नया प्री-रिलीज़ बिल्ड इंस्टॉल करने के लिए तैयार हो तो टेस्टर को कैसे अलर्ट करें
- SDK को अपनी परीक्षण आवश्यकताओं के अनुरूप कैसे अनुकूलित करें
आपको किस चीज़ की ज़रूरत पड़ेगी
- नवीनतम Android स्टूडियो संस्करण।
- नमूना कोड।
- Android 4.4+ और Google Play सेवाओं 9.8 या बाद के संस्करण के साथ एक परीक्षण उपकरण, या Google Play सेवाओं 9.8 या बाद के संस्करण के साथ एक एमुलेटर।
- यदि डिवाइस का उपयोग कर रहे हैं, तो एक कनेक्शन केबल।
आप इस ट्यूटोरियल का उपयोग कैसे करेंगे?
आप Android ऐप्स बनाने के अपने अनुभव का मूल्यांकन कैसे करेंगे?
2. नमूना कोड प्राप्त करें
कमांड लाइन से GitHub रिपॉजिटरी को क्लोन करें।
$ git clone https://github.com/FirebaseExtended/codelab-appdistribution-android.git
अगर आपके पास गिट इंस्टॉल नहीं है, तो आप नमूना प्रोजेक्ट को इसके गिटहब पेज से या इस लिंक पर क्लिक करके भी डाउनलोड कर सकते हैं।
3. स्टार्टर ऐप आयात करें
एंड्रॉइड स्टूडियो से, codelab-appdistribution-android/start
डायरेक्टरी चुनें ( ) सैंपल कोड डाउनलोड से ( File > Open > .../codelab-appdistribution-android/start)।
अब आपके पास Android Studio में स्टार्ट प्रोजेक्ट खुला होना चाहिए।
4. एक फायरबेस कंसोल प्रोजेक्ट बनाएं
एक नया फायरबेस प्रोजेक्ट जोड़ें
- फायरबेस कंसोल खोलें।
- प्रोजेक्ट जोड़ें चुनें और फिर अपने प्रोजेक्ट का नाम "Firebase Codelab" रखें.
आपको इस प्रोजेक्ट के लिए Google Analytics को सक्षम करने की आवश्यकता नहीं है।
- प्रोजेक्ट बनाएं पर क्लिक करें।
फायरबेस में ऐप जोड़ें
अपने ऐप को फायरबेस के साथ पंजीकृत करें । पैकेज नाम के रूप में "com.google.firebase.appdistributioncodelab" का उपयोग करें।
अपने ऐप में google-services.json फ़ाइल जोड़ें
पैकेज का नाम जोड़ने और रजिस्टर का चयन करने के बाद, अपने ऐप में google-services.json जोड़ने के लिए इन चरणों का पालन करें:
- अपनी Firebase Android कॉन्फ़िगरेशन फ़ाइल प्राप्त करने के लिए google-services.json डाउनलोड करें पर क्लिक करें।
- अपने प्रोजेक्ट में google-services.json फ़ाइल को
app
निर्देशिका में कॉपी करें। - फ़ाइल डाउनलोड होने के बाद आप कंसोल में दिखाए गए अगले चरणों को छोड़ सकते हैं (वे बिल्ड-एंड्रॉइड-स्टार्ट प्रोजेक्ट में आपके लिए पहले ही किए जा चुके हैं)।
अपने फायरबेस ऐप से मिलान करने के लिए एप्लिकेशन आईडी अपडेट करें
- बाएं मेनू (प्रोजेक्ट टैब) में, सुनिश्चित करें कि आप "एंड्रॉइड" व्यू पर हैं और "ग्रेडल स्क्रिप्ट्स" टैब का पता लगाएं और अपना मॉड्यूल (ऐप-लेवल) ग्रेडल फ़ाइल खोलें (आमतौर पर
app/build.gradle.kts
)। -
applicationId
प्रॉपर्टी को अपने फायरबेस ऐप की एप्लिकेशन आईडी से मिलान करने के लिए बदलें। यह "com.google.firebase.appdistributioncodelab" होना चाहिए
अपने प्रोजेक्ट को ग्रेडल फाइलों के साथ सिंक करें
यह सुनिश्चित करने के लिए कि आपके ऐप के लिए सभी निर्भरताएँ उपलब्ध हैं, अपने प्रोजेक्ट को ग्रेडल फ़ाइल के साथ सिंक करें, Android स्टूडियो टूलबार से फ़ाइल का चयन करके ग्रेडल फ़ाइल के साथ प्रोजेक्ट सिंक करें ।
5. ऐप वितरण एंड्रॉइड एसडीके के साथ इन-ऐप नया बिल्ड अलर्ट सेट करें
इस चरण में, आप अपने ऐप में Firebase ऐप डिस्ट्रीब्यूशन Android SDK जोड़ेंगे और अपने ऐप के नए बिल्ड इंस्टॉल करने के लिए उपलब्ध होने पर अपने परीक्षकों को इन-ऐप अलर्ट प्रदर्शित करेंगे। ऐसा करने के लिए, सुनिश्चित करें कि आपने अपने "Firebase Codelab" प्रोजेक्ट (Google क्लाउड कंसोल में) के लिए Firebase ऐप परीक्षक API को सक्षम कर लिया है। आपको उसी खाते से साइन इन करना होगा और शीर्ष पर ड्रॉप-डाउन मेनू से सही प्रोजेक्ट का चयन करना होगा।
इन-ऐप अलर्ट कॉन्फ़िगर करें
ऐप वितरण Android SDK आपके परीक्षकों के लिए इन-ऐप बिल्ड अलर्ट सेट करने के दो तरीके प्रदान करता है:
- एक बुनियादी चेतावनी विन्यास, जो परीक्षकों को प्रदर्शित करने के लिए एक पूर्व-निर्मित संवाद के साथ आता है।
- एक उन्नत अलर्ट कॉन्फ़िगरेशन, जो आपको अपना उपयोगकर्ता इंटरफ़ेस (UI) अनुकूलित करने देता है।
हम बुनियादी अलर्ट कॉन्फ़िगरेशन के साथ शुरुआत करेंगे। आप उन परीक्षकों के लिए पूर्व-निर्मित सक्षम अलर्ट संवाद प्रदर्शित करने के लिए updateIfNewReleaseAvailable
का उपयोग कर सकते हैं, जिन्होंने अभी तक अलर्ट सक्षम नहीं किए हैं, और फिर जांचें कि कोई नया बिल्ड उपलब्ध है या नहीं। परीक्षक उस खाते में साइन इन करके अलर्ट सक्षम करते हैं जिसकी ऐप वितरण में ऐप तक पहुंच है। जब कॉल किया जाता है, तो विधि निम्नलिखित अनुक्रम को लागू करती है:
- जाँचता है कि क्या परीक्षक सक्षम अलर्ट करता है। यदि नहीं, तो विधि एक पूर्व-निर्मित संवाद प्रदर्शित करती है जो परीक्षकों को उनके Google खाते से ऐप वितरण में साइन इन करने के लिए प्रेरित करती है।
अलर्ट सक्षम करना टेस्ट डिवाइस पर एक बार की जाने वाली प्रक्रिया है जो आपके ऐप के सभी अपडेट पर बनी रहती है। परीक्षण डिवाइस पर अलर्ट तब तक सक्षम रहते हैं जब तक कि ऐप को अनइंस्टॉल नहीं किया जाता है या जब तक signOutTester
विधि को कॉल नहीं किया जाता है।
- टेस्टर को इंस्टॉल करने के लिए नए उपलब्ध बिल्ड की जांच करता है.
- नवीनतम रिलीज़ को डाउनलोड करने के लिए परीक्षक को संकेत देने वाला पूर्व-निर्मित अलर्ट प्रदर्शित करता है।
- अद्यतन के साथ आगे बढ़ने से पहले नए बिल्ड प्रकार की जाँच करता है:
- अगर नया बिल्ड एक ऐप बंडल (AAB) है, तो अपडेट प्रक्रिया को पूरा करने के लिए टेस्टर को Play Store पर रीडायरेक्ट करता है।
- यदि नया बिल्ड एपीके है, तो एसडीके नए बिल्ड को बैकग्राउंड में डाउनलोड करता है और टेस्टर को डाउनलोड पूरा होने पर नया बिल्ड इंस्टॉल करने का संकेत देता है। एसडीके
NotificationManager.
आप एकonProgressUpdate
हैंडलर कोupdateIfNewReleaseAvailable
Task में जोड़कर अपना स्वयं का प्रगति संकेतक जोड़ सकते हैं।
आप अपने ऐप में किसी भी समय updateIfNewReleaseAvailable()
कॉल कर सकते हैं। उदाहरण के लिए, आप MainActivity के onResume()
विधि के दौरान updateIfNewReleaseAvailable()
को कॉल कर सकते हैं:
MainActivity.kt खोलें, और इस तरह से onResume()
मेथड बनाएं:
MainActivity.kt
override fun onResume() {
super.onResume()
checkForUpdate()
}
अब checkForUpdate()
मेथड को लागू करते हैं।
MainActivity.kt
private fun checkForUpdate() {
firebaseAppDistribution.updateIfNewReleaseAvailable()
.addOnProgressListener { updateProgress ->
// (Optional) Implement custom progress updates in addition to
// automatic NotificationManager updates.
}
.addOnFailureListener { e ->
if (e is FirebaseAppDistributionException) {
// Handle exception.
}
}
}
6. अपना ऐप डाउनलोड करने के लिए परीक्षकों को बनाएं और आमंत्रित करें
इस चरण में, आप अपना ऐप बनाते हैं और फायरबेस कंसोल का उपयोग करके परीक्षकों को बिल्ड वितरित करके अपने कार्यान्वयन का परीक्षण करते हैं।
अपना ऐप बनाएं
जब आप परीक्षकों को अपने ऐप्लिकेशन का रिलीज़-पूर्व संस्करण वितरित करने के लिए तैयार हों, तो अपनी सामान्य प्रक्रिया का उपयोग करके अपना APK बनाएं. आपको अपनी डीबग कुंजी या ऐप साइनिंग कुंजी से APK पर हस्ताक्षर करना होगा।
परीक्षकों को अपना ऐप वितरित करें
परीक्षकों को अपना ऐप वितरित करने के लिए, Firebase कंसोल का उपयोग करके APK फ़ाइल अपलोड करें:
- फायरबेस कंसोल का ऐप डिस्ट्रीब्यूशन पेज खोलें। संकेत मिलने पर अपना फायरबेस प्रोजेक्ट चुनें।
- रिलीज़ पृष्ठ पर, वह ऐप चुनें जिसे आप ड्रॉप-डाउन मेनू से वितरित करना चाहते हैं।
- प्रारंभ करें क्लिक करें
- इसे अपलोड करने के लिए अपने ऐप की एपीके फ़ाइल को कंसोल पर खींचें।
- जब अपलोड पूरा हो जाए, तो उन परीक्षक समूहों और अलग-अलग परीक्षकों को निर्दिष्ट करें जिन्हें आप बिल्ड प्राप्त करना चाहते हैं। (आमंत्रण प्राप्त करने के लिए अपना ईमेल जोड़ें।) फिर, बिल्ड के लिए रिलीज़ नोट जोड़ें। परीक्षक समूह बनाने के बारे में अधिक जानने के लिए परीक्षकों को जोड़ें और निकालें देखें.
- परीक्षकों को बिल्ड उपलब्ध कराने के लिए वितरित करें पर क्लिक करें।
फायरबेस कंसोल में, अब आप अपने ऐप की रिलीज़ के तहत जोड़े गए परीक्षकों को देख सकते हैं।
चूंकि आपने अपना ईमेल पता शामिल किया है, इसलिए आपको ऐप का परीक्षण करने के लिए आमंत्रित करने के लिए फायरबेस ऐप डिस्ट्रीब्यूशन से एक ईमेल प्राप्त होगा। अब आप पहले परीक्षक हैं! अपने परीक्षण उपकरण पर परीक्षक के रूप में सेट अप करने के लिए आमंत्रण स्वीकार करें में दिए गए निर्देशों का पालन करें।
आमंत्रण स्वीकार कीजिये
रिलीज़ को डाउनलोड करने और उसका परीक्षण करने के लिए आपको पहले आमंत्रण स्वीकार करना होगा।
- अपने Android परीक्षण उपकरण पर, Firebase ऐप्लिकेशन वितरण से भेजे गए ईमेल को खोलें और प्रारंभ करें टैप करें.
- दिखाई देने वाले Firebase ऐप डिस्ट्रीब्यूशन टेस्टर वेब ऐप में, अपने Google खाते से साइन इन करें और आमंत्रण स्वीकार करें पर टैप करें। अब आप वह रिलीज़ देख सकते हैं जिसे आपको परीक्षण के लिए आमंत्रित किया गया है।
परीक्षण डिवाइस से रिलीज़ को डाउनलोड करें
जब आप ऐपडिस्ट्रीब्यूशन कोडलैब ऐप पर नेविगेट करते हैं, तो आप देख सकते हैं कि रिलीज़ डाउनलोड के लिए तैयार है।
- डाउनलोड टैप करें, फिर ऐप इंस्टॉल करें और चलाएं!
- जब ऐप शुरू होता है, तो यह आपसे नए बिल्ड अलर्ट को सक्षम करने के लिए कहता है। चालू करें टैप करें।
- अपने परीक्षक खाते से साइन इन करें..
आप ऐप पर वापस आ गए हैं। अगली बार जब आप ऐप चलाते हैं, तो आपको साइन इन करने या अलर्ट स्वीकार करने की आवश्यकता नहीं होती है
अपने परीक्षकों को अपडेट वितरित करें
- अपने मॉड्यूल (ऐप-लेवल) ग्रैडल फ़ाइल (आमतौर पर ऐप/बिल्ड.ग्रेडल) में अपने वर्जननाम को "1.1" और वर्जनकोड को 2 में अपडेट करें।
- अपनी सामान्य प्रक्रिया का उपयोग करके अपना एपीके बनाएं। आपको अपनी डीबग कुंजी या ऐप साइनिंग कुंजी से APK पर हस्ताक्षर करना होगा।
- इस नए एपीके को अपने फायरबेस कंसोल में अपलोड करें, अपने ईमेल को परीक्षक के रूप में फिर से जोड़ें और वितरित करें पर क्लिक करें।
टेस्ट बिल्ड अलर्ट
- यदि यह खुला था तो सुनिश्चित करें कि आपने ऐप को बंद कर दिया है।
- ऐप को रीस्टार्ट करें।
- जब ऐप पुनरारंभ होता है, तो आपको एक नया संस्करण उपलब्ध अलर्ट प्राप्त होता है।
- नवीनतम संस्करण प्राप्त करने के लिए, अपडेट करें पर क्लिक करें।
- यदि संकेत दिया जाए, तो अज्ञात स्रोतों से इंस्टॉल को सक्षम करने का विकल्प चुनें।
- अगली स्क्रीन पर इंस्टॉल (या अपडेट ) पर क्लिक करें।
- बधाई हो! आप अपने ऐप को अंतर्निहित अलर्ट के साथ अपडेट करने में सक्षम थे।
7. परीक्षक साइन-इन को अनुकूलित करें
साइनइनटेस्टर/साइनआउटटेस्टर और isTesterSignedIn विधियां आपको अपने परीक्षक के साइन-इन अनुभव को अनुकूलित करने में अधिक लचीलापन देती हैं, इसलिए यह आपके ऐप के रंगरूप से बेहतर मेल खा सकती है।
निम्न उदाहरण यह जाँचता है कि क्या परीक्षक ने पहले ही उनके Firebase ऐप वितरण परीक्षक खाते में साइन इन कर लिया है, इसलिए आप अपना साइन-इन UI केवल उन परीक्षकों के लिए प्रदर्शित करना चुन सकते हैं जिन्होंने अभी तक साइन इन नहीं किया है। परीक्षक द्वारा साइन इन करने के बाद, आप तब कर सकते हैं यह जांचने के लिए checkForUpdate को कॉल करें कि परीक्षक के पास नए बिल्ड तक पहुंच है या नहीं।
चलिए checkForUpdate() कॉल पर टिप्पणी करके onResume में स्वचालित रूप से अद्यतनों की जाँच को अक्षम कर देते हैं।
MainActivity.kt
override fun onResume() {
super.onResume()
//checkForupdate()
}
इसके बजाय, checkForUpdate() पहले से ही अपडेटबटन के ऑनक्लिक लिस्टनर में जोड़ा गया है।
अब, अपनी साइन इन () पद्धति को लागू करते हैं जो उपयोगकर्ता को साइन इन करेगा यदि वे साइन आउट हैं, या उपयोगकर्ता को साइन आउट करें यदि वे पहले से साइन इन हैं।
MainActivity.kt
private fun signIn() {
if (isTesterSignedIn()) {
firebaseAppDistribution.signOutTester()
configureUpdateButton()
configureSigninButton()
} else {
firebaseAppDistribution.signInTester()
}
}
अंत में आइए isTesterSignedIn विधि को लागू करें।
MainActivity.kt
private fun isTesterSignedIn() : Boolean {
return firebaseAppDistribution.isTesterSignedIn
}
अपने कार्यान्वयन का निर्माण और परीक्षण करें
8. बधाई हो!
आपने फायरबेस ऐप डिस्ट्रीब्यूशन एंड्रॉइड एसडीके का उपयोग करके ऐप में "इन-ऐप अलर्ट डिस्प्ले" फीचर बनाया है।
हमने क्या कवर किया है
- फायरबेस ऐप वितरण
- फायरबेस ऐप डिस्ट्रीब्यूशन नए अलर्ट एंड्रॉइड एसडीके
अगले कदम
और अधिक जानें
एक सवाल है?
मुद्दों की रिपोर्ट करें