मोबाइल एप्लिकेशन का बिल्ड और डिप्लॉयमेंट — सोर्स कोड को इंस्टॉलेबल फ़ाइल (APK, AAB, IPA) में बदलने और उसे एप स्टोर्स में अपलोड करने की प्रक्रिया है। Google Play Console (2025) के अनुसार, Android App Bundle (AAB) अगस्त 2021 से Google Play पर प्रकाशन के लिए अनिवार्य प्रारूप है। इस लेख में हम बिल्ड प्रारूप, कंपाइलेशन, कोड साइनिंग, प्रकाशन प्रक्रिया और बीटा परीक्षण पर चर्चा करेंगे।
मुख्य बिंदु
APK (Android Package Kit) — Android पर मोबाइल एप्लिकेशन बनाने और प्रकाशित करने का पारंपरिक प्रारूप। APK में एप्लिकेशन का सारा कोड, संसाधन और मेनिफेस्ट शामिल होता है। AAB (Android App Bundle) — Google द्वारा 2018 में पेश किया गया प्रारूप और अगस्त 2021 से नए एप्लिकेशन के लिए अनिवार्य हो गया। AAB सीधे इंस्टॉल नहीं होता — Google Play AAB से प्रत्येक डिवाइस के लिए गतिशील रूप से ऑप्टिमाइज़्ड APK जनरेट करता है।
AAB के लाभ: डाउनलोड आकार औसतन 15% छोटा (केवल आवश्यक संसाधन देने के कारण: सही स्क्रीन डेंसिटी, भाषाएँ, CPU आर्किटेक्चर)। AAB मॉड्यूलर डिलीवरी का भी समर्थन करता है — आप ऑन डिमांड (Play Feature Delivery) या विलंबित (Play On-Demand) मॉड्यूल लोड कर सकते हैं। डेवलपर्स के लिए AAB अनिवार्य है; Google Play के बाहर वितरण (साइडलोडिंग, मार्केटप्लेस) के लिए — केवल APK।
IPA (iOS App Store Package) — iOS इंस्टॉलेबल फ़ाइल, जो हस्ताक्षरित एप्लिकेशन के साथ एक ZIP आर्काइव है। IPA में Payload/ फ़ोल्डर .app बंडल, Provisioning Profile और हस्ताक्षर होते हैं। IPA केवल macOS पर Xcode के माध्यम से बनाया जाता है, जो एक आर्काइव (.xcarchive) बनाता है और IPA एक्सपोर्ट करता है। App Store के माध्यम से वितरण के लिए IPA को Apple Distribution Certificate से हस्ताक्षरित किया जाता है; Ad Hoc या Enterprise के लिए — संबंधित प्रमाणपत्रों से।
| पैरामीटर | APK | AAB | IPA |
|---|---|---|---|
| प्लेटफ़ॉर्म | Android | Android (Google Play) | iOS |
| प्रारूप | ZIP आर्काइव | ZIP आर्काइव | ZIP आर्काइव |
| सीधे इंस्टॉलेशन | हाँ | नहीं (Google Play के माध्यम से) | App Store / MDM के माध्यम से |
| हस्ताक्षर | Keystore (JKS) | Keystore (JKS/PEPK) | Apple Certificate |
| App Thinning | नहीं | हाँ (स्वचालित) | हाँ (Slicing, Bitcode) |
JIT (Just-In-Time) — एप्लिकेशन निष्पादन के दौरान कोड का कंपाइलेशन, जो बिल्ड और प्रकाशन की गति को प्रभावित करता है। Android संस्करण 5.0 (Lollipop) तक JIT कंपाइलेशन के साथ Dalvik VM का उपयोग होता था। प्रत्येक एप्लिकेशन लॉन्च पर DEX बायटेकोड «मौके पर» मशीन कोड में परिवर्तित होता था। कमी: पहले लॉन्च में धीमापन और अतिरिक्त ऊर्जा खपत। AOT (Ahead-Of-Time) — एप्लिकेशन लॉन्च से पहले, इंस्टॉलेशन के दौरान कोड का कंपाइलेशन। Android 7.0 (Nougat) से, ART (Android Runtime) इंस्टॉलेशन के दौरान एप्लिकेशन को पूरी तरह कंपाइल करता है।
ART (Android Runtime) — रनटाइम वातावरण जिसने Android 5.0 में Dalvik को बदला। ART हाइब्रिड दृष्टिकोण का उपयोग करता है: इंस्टॉलेशन के दौरान AOT कंपाइलेशन + बार-बार निष्पादित विधियों के लिए JIT। यह AOT की गति (तेज़ स्टार्टअप) को JIT की लचीलापन (अनुकूली ऑप्टिमाइज़ेशन) के साथ जोड़ता है। परिणाम: Dalvik की तुलना में Android एप्लिकेशन का प्रदर्शन 20-30% बढ़ गया। डेवलपर्स के लिए, ART में संक्रमण पारदर्शी है — कोड में बदलाव की आवश्यकता नहीं है।
Bitcode — कोड का मध्यवर्ती प्रतिनिधित्व (IR) जिसका उपयोग Apple विभिन्न प्रोसेसर आर्किटेक्चर के लिए IPA को पुनः कंपाइल करने के लिए करता है। Bitcode वैकल्पिक है: iOS एप्लिकेशन के लिए यह डिफ़ॉल्ट रूप से सक्षम है, watchOS और tvOS के लिए अनिवार्य है। Apple नए प्रोसेसर जारी होने पर डेवलपर की भागीदारी के बिना Bitcode को पुनः कंपाइल कर सकता है। App Thinning — Apple की तकनीक जिसमें Slicing (डिवाइस के लिए केवल आवश्यक संसाधन देना) और On-Demand Resources (आवश्यकतानुसार संसाधन लोड करना) शामिल है। App Thinning App Store से डाउनलोड आकार को 30-50% तक कम करता है।
DEX — Android के लिए बायटेकोड प्रारूप, जिसे ART/Dalvik द्वारा निष्पादित किया जाता है। Kotlin/Java सोर्स कोड class फ़ाइलों में कंपाइल होता है, फिर dx या d8 (आधुनिक और तेज़ उपकरण) के माध्यम से DEX में। Multidex — उन एप्लिकेशन के लिए तंत्र जो एक DEX फ़ाइल में 65,536 विधियों की सीमा से अधिक होते हैं। आधुनिक प्रोजेक्ट्स में, multidex स्वचालित रूप से सक्षम होता है यदि targetSdkVersion >= 21।
Keystore — फ़ाइल जिसमें बिल्ड के दौरान Android एप्लिकेशन पर हस्ताक्षर करने के लिए निजी कुंजी और प्रमाणपत्र होता है। Keystore keytool (-genkey कमांड) या Android Studio के माध्यम से बनाया जाता है। महत्वपूर्ण: Keystore खोया नहीं जा सकता — इसके बिना आप Google Play पर एप्लिकेशन अपडेट नहीं कर सकते। हस्ताक्षर पैरामीटर: keyAlias, keyPassword, storePassword और storeFile। प्रारूप: JKS (Java KeyStore) या AAB के लिए PEPK (Play Encrypted Private Key)।
App Bundle ID (Android) — पैकेज नोटेशन (com.example.app) में एप्लिकेशन का अद्वितीय पहचानकर्ता। Version Code — आंतरिक संस्करण क्रमांकन के लिए पूर्णांक (प्रत्येक नया बिल्ड इसे बढ़ाता है)। Version Name — उपयोगकर्ता को दिखाई जाने वाली स्ट्रिंग (1.2.3)। ये पैरामीटर build.gradle में ऐप स्तर पर सेट किए जाते हैं।
Apple Certificate — डिजिटल प्रमाणपत्र जो डेवलपर की पहचान प्रमाणित करता है। प्रकार: Development (डिबगिंग के लिए), Distribution (App Store के लिए), Ad Hoc (सीमित वितरण के लिए)। प्रमाणपत्र Apple Developer Account में बनाए जाते हैं और Keychain में डाउनलोड किए जाते हैं। Provisioning Profile — फ़ाइल जो प्रमाणपत्र, App ID (Bundle Identifier) और अनुमत डिवाइसों की सूची को जोड़ती है। Provisioning Profile के बिना एप्लिकेशन डिवाइस पर नहीं चलेगा।
Bundle ID (iOS) — एप्लिकेशन का अद्वितीय पहचानकर्ता (com.example.app)। Build Number — बिल्ड संस्करण, प्रत्येक बिल्ड के साथ बढ़ता है। Marketing Version — उपयोगकर्ता को दिखाया जाने वाला संस्करण। संस्करण प्रबंधन: iOS के लिए, पैरामीटर Info.plist और Project Settings में सेट किए जाते हैं; Android के लिए — build.gradle में। IT Sectr में, हम Fastlane के माध्यम से संस्करण अपडेट को स्वचालित करते हैं — यह रिलीज़ के दौरान मानवीय त्रुटियों को समाप्त करता है।
Google Play Console — Android एप्लिकेशन प्रकाशित करने का उपकरण। प्रक्रिया: डेवलपर खाता पंजीकृत करें ($25 एक बार), एप्लिकेशन बनाएं, मेटाडेटा भरें (नाम, विवरण, स्क्रीनशॉट, श्रेणी), AAB अपलोड करें, मूल्य और वितरण कॉन्फ़िगर करें, समीक्षा। Google एप्लिकेशन की स्वचालित रूप से जाँच करता है (वायरस, नीति अनुपालन) और कुछ श्रेणियों के लिए मैन्युअल रूप से। समीक्षा में कुछ घंटों से 2-3 दिन लगते हैं।
App Store Connect — iOS एप्लिकेशन प्रकाशित करने का Apple का प्लेटफ़ॉर्म। प्रक्रिया: Apple डेवलपर खाता ($99/वर्ष), App Store Connect में एप्लिकेशन बनाएं, Xcode में IPA तैयार करें (Archive → Distribute App → App Store Connect), Transporter या Xcode के माध्यम से अपलोड करें, मेटाडेटा भरें, समीक्षा के लिए भेजें। App Review — Apple की मैन्युअल समीक्षा में 24 घंटे से 7 दिन लग सकते हैं। अस्वीकृति के सामान्य कारण: काम न करने वाले बटन, अधूरी सामग्री, बिना स्पष्टीकरण के अनुमति का अनुरोध।
TestFlight — iOS एप्लिकेशन के बीटा परीक्षण के लिए Apple का आधिकारिक उपकरण। TestFlight Internal Testing (ईमेल द्वारा 100 परीक्षकों तक, बिना समीक्षा) और External Testing (10,000 परीक्षकों तक, Apple समीक्षा के साथ) का समर्थन करता है। बिल्ड 90 दिनों तक उपलब्ध रहते हैं, जिसके बाद नया बिल्ड अपलोड करना होता है। TestFlight नया बिल्ड अपलोड करने पर परीक्षकों के पास एप्लिकेशन को स्वचालित रूप से अपडेट करता है।
Internal Testing (Android) — 100 परीक्षकों तक, Google समीक्षा के बिना, बिल्ड तुरंत उपलब्ध। Closed Beta — ईमेल या Google Groups द्वारा 1000 परीक्षकों तक, बिना समीक्षा। Open Beta — सार्वजनिक लिंक के माध्यम से असीमित परीक्षक, Google समीक्षा के साथ। Staged Rollout — अपडेट प्राप्त करने वाले उपयोगकर्ताओं के प्रतिशत में क्रमिक वृद्धि (5% → 20% → 50% → 100%)। यह रिलीज़ का सबसे सुरक्षित तरीका है।
App Thinning (iOS) — डाउनलोड किए गए IPA आकार की स्वचालित कमी: Slicing (डिवाइस के लिए केवल आवश्यक संसाधन), Bitcode (प्रोसेसर ऑप्टिमाइज़ेशन), On-Demand Resources (आवश्यकतानुसार डाउनलोड)। IT Sectr में, हम iOS बीटा परीक्षण के लिए TestFlight और Android के लिए Internal Testing का उपयोग करते हैं — यह सामूहिक रिलीज़ से पहले समस्याओं को पकड़ने में मदद करता है।
अक्सर पूछे जाने वाले प्रश्न
APK — एक सार्वभौमिक इंस्टॉलेबल फ़ाइल, किसी भी डिवाइस पर काम करती है। AAB — Google Play के लिए प्रारूप जो प्रत्येक डिवाइस के लिए इष्टतम APK जनरेट करता है। AAB के माध्यम से डाउनलोड आकार 15% छोटा है। Google Play के लिए AAB अनिवार्य है, साइडलोडिंग के लिए — APK।
आप Google Play पर एप्लिकेशन अपडेट नहीं कर पाएंगे — आपको नए package name के साथ नया एप्लिकेशन बनाना होगा। Keystore को सुरक्षित स्थान पर रखें (पासवर्ड मैनेजर, एन्क्रिप्टेड Git)। Google Play App Signing (Google कुंजियों का उपयोग) इस जोखिम को कम करता है।
Google Play — डेवलपर खाते के लिए $25 एक बार। App Store — $99/वर्ष। दोनों राशियों में असीमित एप्लिकेशन शामिल हैं। iOS के लिए आपको Mac (से $999) या क्लाउड Mac किराये की भी आवश्यकता है।
Staged Rollout — क्रमिक अपडेट रोलआउट: पहले 5% उपयोगकर्ता, फिर 20%, 50% और 100%। यदि किसी भी चरण में क्रैश पाए जाते हैं — रोलआउट रोक दिया जाता है। Google Play Console में उपलब्ध।
Android के लिए — नहीं, आप बिना खाते के USB या एमुलेटर के माध्यम से डिवाइस पर APK इंस्टॉल कर सकते हैं। iOS के लिए — हाँ, बिना $99/वर्ष के खाते के एप्लिकेशन केवल सिम्युलेटर पर काम करेगा, वास्तविक डिवाइस पर नहीं।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।