Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रणाली >> Android

इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें <पी> जब आप अपने एप्लिकेशन का नया संस्करण लॉन्च करते हैं, तो आप चाहते हैं कि आपके उपयोगकर्ताओं को इसके बारे में पता चले। क्या आपने कोई गंभीर बग ठीक किया है, कोई नई सुविधा जोड़ी है, या एप्लिकेशन आसानी से या तेज चलता है - उन्हें यह जानने की जरूरत है। <पी> एप्लिकेशन डेवलपर्स के रूप में, हम चाहते हैं कि हमारे सभी उपयोगकर्ता हमारे एप्लिकेशन के नवीनतम संस्करण का उपयोग करें।

<पी> लेकिन हम यह कैसे सुनिश्चित कर सकते हैं कि उपयोगकर्ताओं को हमारे एप्लिकेशन के नए संस्करण के बारे में पता है?

<पी> उस प्रश्न का उत्तर काफी सरल है:एप्लिकेशन का नया संस्करण आने पर उन्हें सूचित क्यों नहीं किया जाए? <पी> आप इसे विभिन्न तरीकों से कर सकते हैं:

  • पुश अधिसूचना का उपयोग करें
  • एप्लिकेशन लॉन्च होने पर उन्हें बताएं
<पी> हम इस लेख में पुश नोटिफिकेशन पर चर्चा नहीं करेंगे। इसके बजाय हम यह दिखाने पर ध्यान केंद्रित करेंगे कि आप कैसे (एक या दो पैकेज का उपयोग करके) अपने उपयोगकर्ताओं को एक संवाद दिखा सकते हैं कि उन्हें सूचित करें कि एप्लिकेशन का एक नया संस्करण आ गया है और अपडेट से कैसे निपटें।

रुको, क्या यह पहले से ही शामिल नहीं है?

<पी> आप सोचेंगे कि इस तरह की कार्यक्षमता पहले से ही आधुनिक मोबाइल ओएस सिस्टम में शामिल होनी चाहिए। और आप सही होंगे - लेकिन केवल Android के लिए। <पी> iOS (वर्तमान में) डेवलपर्स को यह देखने की क्षमता नहीं देता है कि एप्लिकेशन का कोई नया संस्करण है या नहीं और उपयोगकर्ताओं को इसके बारे में सूचित करें। एंड्रॉइड में, आपके पास इन-ऐप अपडेट लाइब्रेरी है जो Google Play लाइब्रेरी का हिस्सा है।

<पी> इस वजह से, और क्योंकि फ़्लटर दोनों प्लेटफार्मों का समर्थन करता है, मैं दो प्रमुख पैकेजों पर जाने जा रहा हूं जो आपके एप्लिकेशन के संस्करण अपडेट को संभालने में आपकी सहायता करते हैं:

  1. अपग्रेडर
  2. ऐप अपडेट में
<पी> दोनों आपको वांछित परिणाम दे सकते हैं, लेकिन वे इसे कैसे करते हैं, इसमें व्यापक रूप से भिन्नता है।

<पी> शुरू करने से पहले, यह समझना महत्वपूर्ण है कि आपके पास अपने एप्लिकेशन का एक संस्करण होना चाहिए जो सीधे Google Play स्टोर से इंस्टॉल किया गया हो . यह आवश्यक है क्योंकि दोनों पैकेज Google Play सेवाओं और एप्लिकेशन के स्वामी को सत्यापित करने की इसकी क्षमता पर निर्भर हैं। <पी> यदि आप ऐसा करने में विफल रहते हैं, तो किसी एक पैकेज का उपयोग करने का प्रयास करते समय आपको निम्नलिखित त्रुटि दिखाई देगी:

<पी> _इंस्टॉल त्रुटि(-10):इस डिवाइस पर ऐप का स्वामित्व किसी भी उपयोगकर्ता के पास नहीं है। कोई ऐप "स्वामित्व वाला" होता है यदि उसे Play से प्राप्त किया गया हो। (https://developer.android.com/reference/com/google/android/play/core/install/model/InstallErrorCode#ERROR_APP_NOTस्वामित्व वाला)

इन ऐप अपडेट पैकेज का उपयोग कैसे करें

<पी> आपको शुरू से ही पता होना चाहिए कि यह पैकेज केवल एंड्रॉइड पर काम करेगा। ऐसा इसलिए है क्योंकि यह अपने आंतरिक कामकाज के लिए इन ऐप अपडेट लाइब्रेरी पर निर्भर करता है। <पी> यह पैकेज मूल रूप से एंड्रॉइड लाइब्रेरी के लिए एक रैपर है। नीचे इसकी उजागर एपीआई विधियाँ हैं:

  • Future<AppUpdateInfo> checkForUpdate() :जाँचता है कि क्या कोई अपडेट उपलब्ध है
  • Future<AppUpdateResult> performImmediateUpdate() :तत्काल अपडेट करता है (पूर्ण-स्क्रीन)
  • Future<AppUpdateResult> startFlexibleUpdate() :एक लचीला अद्यतन प्रारंभ करता है (पृष्ठभूमि डाउनलोड)
  • Future<void> completeFlexibleUpdate() :वास्तव में एक उपलब्ध लचीला अद्यतन स्थापित करता है
<पी> ✋ यदि आप तत्काल अपडेट या लचीले अपडेट के बीच अंतर के बारे में अधिक पढ़ना चाहते हैं, तो यहां जाएं।

पैकेज कैसे सेट करें

<पी> सबसे पहले, पैकेज को अपनी pubspec.yaml फ़ाइल में जोड़ें:

dependencies:
 flutter:
 sdk: flutter
 in_app_update: ^3.0.0
<पी> फिर पब गेट करें।

<पी> अपने एप्लिकेशन के अंदर, जहां आप ऐप अपडेट को संभालने के लिए तर्क निष्पादित करना चाहते हैं, निम्नलिखित आयात जोड़ें:

import 'package:in_app_update/in_app_update.dart';
<पी> हमें सबसे पहले तर्क जोड़ने की आवश्यकता होगी जो जांचता है कि हमारे एप्लिकेशन में कोई अपडेट है या नहीं। ऐसा करने के लिए, हम checkForUpdate का उपयोग करेंगे विधि. इसका रिटर्न वैल्यू एक Future है जिसमें ऐप अपडेट की उपलब्धता और प्रगति के बारे में जानकारी होती है। <पी> हम updateAvailability प्रॉपर्टी का उपयोग करके जांच सकते हैं कि कोई अपडेट उपलब्ध है या नहीं। यदि कोई अपडेट उपलब्ध है, तो उसका मान UPDATE_AVAILABLE होगा . तो, आपकी विधि इस तरह दिख सकती है:

InAppUpdate.checkForUpdate().then((updateInfo) {
 if (updateInfo.updateAvailability == UpdateAvailability.updateAvailable) {
 //Logic to perform an update 
 }
});
<पी> इसके बाद, हमें यह तय करना होगा कि हम किस प्रकार का अपडेट ट्रिगर करना चाहते हैं - या तो लचीला या तत्काल अपडेट। <पी> तत्काल अपडेट के लिए जाना उस एप्लिकेशन अपडेट के लिए आरक्षित होना चाहिए जो आपके उपयोगकर्ताओं के लिए महत्वपूर्ण है। इसका मतलब एक ऐसा संस्करण हो सकता है जो एक महत्वपूर्ण बग को ठीक करता है या एक नई सुविधा प्रदान करता है। <पी> तत्काल अपडेट शुरू करने के लिए, हम performImmediateUpdate का उपयोग कर सकते हैं विधि. यह विधि एक AppUpdateResult एनम लौटाती है जो आपको बताती है कि अपडेट सफल था या नहीं। <पी> इस पद्धति को कॉल करने से पहले हमें यह जांचना होगा कि क्या हमें तत्काल अपडेट चलाने की अनुमति है। हम ऐसा immediateUpdateAllowed तक पहुंच कर करते हैं AppUpdateInfo ऑब्जेक्ट पर फ़्लैग करें।

<पी> यदि हम एक लचीला अद्यतन ट्रिगर करना चाहते हैं, तो हम startFleixbleUpdate का उपयोग करते हैं विधि. यह पृष्ठभूमि में चलता है और तत्काल अद्यतन विधि के समान है। यह एक AppUpdateResult एनम भी लौटाता है। <पी> यदि इस परिदृश्य में अद्यतन सफल रहा, तो हमें completeFlexibleUpdate को कॉल करने की आवश्यकता है हमारे एप्लिकेशन पर अपडेट इंस्टॉल करने की विधि।

<पी> इसलिए, यदि हम ऊपर दिए गए कोड स्निपेट को देखें और विभिन्न प्रकार के अपडेट के लिए तर्क जोड़ें, तो यह इस तरह दिखेगा:

InAppUpdate.checkForUpdate().then((updateInfo) {
 if (updateInfo.updateAvailability == UpdateAvailability.updateAvailable) {
 if (updateInfo.immediateUpdateAllowed) {
 // Perform immediate update
 InAppUpdate.performImmediateUpdate().then((appUpdateResult) {
 if (appUpdateResult == AppUpdateResult.success) {
 //App Update successful
 }
 });
 } else if (updateInfo.flexibleUpdateAllowed) {
 //Perform flexible update
 InAppUpdate.startFlexibleUpdate().then((appUpdateResult) {
 if (appUpdateResult == AppUpdateResult.success) {
 //App Update successful
 InAppUpdate.completeFlexibleUpdate();
 }
 });
 }
 }
});

अपग्रेडर पैकेज का उपयोग कैसे करें

<पी> पहले विकल्प के विपरीत, यह iOS और Android दोनों के लिए एक समाधान प्रदान करता है। यह स्टोर से डेटा इकट्ठा करने और एप्लिकेशन से मौजूदा डेटा के विरुद्ध इसकी जांच करने पर निर्भर करता है। <पी> डेटा को क्वेरी करने के लिए एपीआई के बजाय, इस पैकेज में विजेट हैं जो हुड के नीचे तर्क निष्पादित करते हैं।

पैकेज कैसे सेट करें

<पी> सबसे पहले, पैकेज को अपनी pubspec.yaml फ़ाइल में जोड़ें:

dependencies:
 flutter:
 sdk: flutter
 upgrader: ^5.0.0
<पी> फिर पब गेट करें।

<पी> अपने एप्लिकेशन के अंदर, जहां आप ऐप अपडेट को संभालने के लिए तर्क निष्पादित करना चाहते हैं, निम्नलिखित आयात जोड़ें:

import 'package:upgrader/upgrader.dart';
<पी> इन दोनों विकल्पों के बीच मुख्य अंतर केवल यूआई है, इसलिए वह चुनें जो आपके लिए सबसे उपयुक्त हो। <पी> इस पैकेज को एकीकृत करने के लिए, आपको अपने बॉडी विजेट को अपग्रेडअलर्ट के साथ लपेटना होगा या अपग्रेड कार्ड . नीचे एक उदाहरण है:

class MyApp extends StatelessWidget {
 @override
 Widget build(BuildContext context) {
 return MaterialApp(
 title: applicationName,
 home: UpgradeAlert( /// <------------------
 child: MainPage(
 key: Key("YOUR_KEY"),
 title: applicationName
 ),
 )
 );
 }
}
<पी> यदि आपके एप्लिकेशन का नया संस्करण स्टोर में उपलब्ध है, तो आपको यह दिखाई देगा:

<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

<पी> चीज़ों का परीक्षण करने के लिए, सुनिश्चित करें कि आप इसे जोड़ें:

await Upgrader.clearSavedSettings()
<पी> आपकी main.dart फ़ाइल में आपकी मुख्य विधि के अंदर।

<पी> जैसा कि आप जानते हैं, ढेर सारे कॉन्फ़िगरेशन हैं जिन्हें आप अपग्रेडर पैकेज के लिए सेट कर सकते हैं। मैं अत्यधिक अनुशंसा करता हूं कि आप जाएं और इन्हें जांचें।

पैकेज का परीक्षण कैसे करें

<पी> भले ही आप किस पैकेज के साथ काम करना चुनते हैं, आपको यह जानना होगा कि आपका तर्क ठीक से काम करता है। <पी> लेकिन आप अपने एप्लिकेशन का आधिकारिक संस्करण जारी किए बिना ऐसा कैसे कर सकते हैं? आप Google Play कंसोल में आंतरिक परीक्षण विकल्प का उपयोग कर सकते हैं। आंतरिक परीक्षकों के लिए आपके एप्लिकेशन का नया संस्करण जारी करने से, यह सार्वजनिक नहीं होगा और आपको अपग्रेड कार्यक्षमता का परीक्षण करने की अनुमति देगा।

<पी> आपको यह करना होगा:

  1. अपने Google Play कंसोल खाते में लॉग इन करें और अद्यतन तर्क प्राप्त करने के लिए उस एप्लिकेशन में जाएं जिस पर आप काम कर रहे हैं
  2. सेटअप → आंतरिक ऐप शेयरिंग के तहत, परीक्षकों को प्रबंधित करें पर जाएं और सुनिश्चित करें कि परीक्षकों को साझा एप्लिकेशन को डाउनलोड और इंस्टॉल करने की अनुमति दी जाए। आप या तो लिंक के माध्यम से या ईमेल के माध्यम से ऐसा करना चुन सकते हैं।
<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

  1. फिर, परीक्षण → आंतरिक परीक्षण पर जाएं और नया रिलीज़ बनाएं बटन (ऊपर दाएं) पर क्लिक करें।
<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

  1. एक बार जब आप रिलीज़ कर लेते हैं, तो आप मुख्य आंतरिक परीक्षण पृष्ठ पर वापस जा सकते हैं और परीक्षक टैब पर क्लिक कर सकते हैं। वहां आपको परीक्षक ईमेल वाली एक सूची दिखाई देगी (अभी खाली है)। नीले तीर आइकन पर क्लिक करें।
<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

  1. इस स्क्रीन में आप स्वयं को एक आंतरिक परीक्षक के रूप में जोड़ सकते हैं (ईमेल पते जोड़ें में)।
<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

  1. जब आपका काम पूरा हो जाए, तो आप आंतरिक परीक्षण विंडो पर वापस जा सकते हैं। नीचे स्क्रॉल करें और आप देखेंगे कि कैसे परीक्षक आपके परीक्षण में शामिल होते हैं और आपको एक कॉपी लिंक बटन दिखाई देगा।
<पी> अब आप बटन पर क्लिक कर सकते हैं और स्वयं को लिंक भेज सकते हैं ताकि आप अपने एप्लिकेशन का नया संस्करण डाउनलोड कर सकें।

<पी> यदि आप उपरोक्त चरणों में से कोई एक करने में विफल रहते हैं, तो उत्पन्न लिंक एक नहीं मिला (त्रुटि 404) पृष्ठ पर ले जाएगा:

<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

<पी> यदि आपने सब कुछ सफलतापूर्वक किया, तो जेनरेट किए गए लिंक पर क्लिक करने पर आपको निम्नलिखित दिखाई देगा:

<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

<पी> यदि आपको यह त्रुटि दिखाई देती है:

<पी> _इंस्टॉल त्रुटि(-6):वर्तमान डिवाइस स्थिति (उदाहरण के लिए कम बैटरी, कम डिस्क स्थान,…) के कारण डाउनलोड/इंस्टॉल की अनुमति नहीं है। (https://developer.android.com/reference/com/google/android/play/core/install/model/InstallErrorCode#ERROR_INSTALL_NOTअनुमति) <पी> इसका मतलब यह हो सकता है कि आप अपना एप्लिकेशन एक अनुकरणीय डिवाइस पर चला रहे हैं और आपको उस पर Google Play Store इंस्टॉल करना होगा और लॉग इन करना होगा।

समापन

<पी> मैंने यह लेख इसलिए लिखा क्योंकि मुझे अपने स्वयं के एप्लिकेशन के साथ इन ऐप अपडेट पैकेज को एकीकृत करते समय उसी प्रक्रिया से गुजरना पड़ा था। <पी> Google Play Store पर इसे देखने के लिए आपका स्वागत है:

<पी> इन-ऐप अपडेट:फ़्लटर उपयोगकर्ताओं को नए संस्करणों के बारे में प्रभावी ढंग से कैसे सूचित करें

<पी> और संपूर्ण स्रोत कोड यहां देखें:

<पी> पढ़ने के लिए धन्यवाद!

<पी> मुफ़्त में कोड करना सीखें. फ्रीकोडकैंप के ओपन सोर्स पाठ्यक्रम ने 40,000 से अधिक लोगों को डेवलपर्स के रूप में नौकरी पाने में मदद की है। आरंभ करें


  1. Windows 10s मई 2020 अपडेट में Cortana ऐप को पूरी तरह से अनइंस्टॉल कैसे करें Windows 10s मई 2020 अपडेट में Cortana ऐप को पूरी तरह से अनइंस्टॉल कैसे करें

    माइक्रोसॉफ्ट ने विंडोज 10 मई 2020 अपडेट के साथ कोरटाना को पूरी तरह से नया रूप दिया। यह अब विंडोज सर्च से अलग हो गया है और आपके डेस्कटॉप पर एक नियमित ऐप के रूप में दिखाई देता है। नया Cortana एक मैसेजिंग ऐप के समान UI का उपयोग करते हुए बातचीत अनुभव के इर्द-गिर्द घूमता है, लेकिन अभी तक पुराने संस्करण क

  1. मैक पर विंडोज 7 कैसे इंस्टाल करें मैक पर विंडोज 7 कैसे इंस्टाल करें

    मैकबुक पर विंडोज 7 कैसे प्राप्त करें आम तौर पर मैकबुक पर विंडोज़ स्थापित करने के दो मुख्य तरीके हैं:बूट कैंप का उपयोग करके मैकोज़ के साथ विंडोज़ स्थापित करें, या वर्चुअल मशीन पर विंडोज़ इंस्टॉल करें। हालाँकि, केवल पुराने मैक (2014 और उससे पहले जारी किए गए) आपको बूट कैंप के साथ विंडोज 7 स्थापित करने

  1. ऐप्स को Windows 11/10 में विश्वसनीय उपकरणों का उपयोग करने की अनुमति कैसे दें ऐप्स को Windows 11/10 में विश्वसनीय उपकरणों का उपयोग करने की अनुमति कैसे दें

    Microsoft ने सेटिंग ऐप में Windows 11/10 . के लिए एक विकल्प शामिल किया है आपके पीसी पर ऐप्स को आपके विश्वसनीय डिवाइस . का उपयोग करने की अनुमति देने के लिए . इस संदर्भ में, कोई भी उपकरण जिसे आप अक्सर अपने सिस्टम से कनेक्ट करते हैं, उसे एक विश्वसनीय उपकरण के रूप में चिह्नित किया जा सकता है। यह कोई भी