पैकेज ए (पुराना/बेस संस्करण)
सबसे पहले .apk/.xapk फ़ाइल पर क्लिक करें या छोड़ें
पैकेज बी (नया/अद्यतन संस्करण)
दूसरी .apk/.xapk फ़ाइल पर क्लिक करें या छोड़ें
APK संस्करणों की तुलना विफल अपडेट को क्यों रोकती है?
जब आप किसी मौजूदा इंस्टॉलेशन पर Android ऐप का नया संस्करण इंस्टॉल करते हैं, तो Android का PackageManager दो सख्त नियमों को लागू करता है: नए पैकेज का versionCode इंस्टॉल किए गए बिल्ड से अधिक या उसके बराबर होना चाहिए, और META-INF/ (या APK साइनिंग ब्लॉक v2/v3) के अंदर इसका हस्ताक्षर प्रमाणपत्र बाइट-दर-बाइट समान होना चाहिए।
- हस्ताक्षर प्रमाणपत्र डाइजेस्ट मिलान: दोनों पैकेजों में .RSA / .DSA / .EC हस्ताक्षर ब्लॉक के SHA-256 फिंगरप्रिंट की गणना करता है ताकि आप तुरंत जान सकें कि अनइंस्टॉल किए बिना इन-प्लेस अपडेट सफल होगा या नहीं।
- मूल ABI और DEX अंतर: हाइलाइट करता है कि क्या अपडेट ने 32-बिट armeabi-v7a लाइब्रेरीज़ को हटा दिया है या नई classes*.dex फ़ाइलें जोड़ी हैं।
- CRC32 प्रवेश डेल्टा: बिल्ड के बीच जोड़ी गई या हटाई गई सटीक फ़ाइलों को सूचीबद्ध करता है।
Android पैकेज अपडेट का मूल्यांकन कैसे करता है (INSTALL_FAILED_UPDATE_INCOMPATIBLE)
साइडलोडेड ऐप को अपडेट करते समय उपयोगकर्ताओं द्वारा सामना की जाने वाली सबसे आम त्रुटियों में से एक "पैकेज मौजूदा पैकेज के साथ टकराव के कारण ऐप इंस्टॉल नहीं किया गया" है (जिसे ADB लॉग में INSTALL_FAILED_UPDATE_INCOMPATIBLE के रूप में जाना जाता है)। ऐसा तब होता है जब इंस्टॉल किया गया ऐप Google Play Store से आता है (डेवलपर की निजी रिलीज कुंजी के साथ हस्ताक्षरित) और अपडेट को स्प्लिट .xapk संग्रह से परिवर्तित किया गया था (जिसे स्प्लिट्स को मर्ज करने के बाद कनवर्टर साइनिंग कुंजी के साथ फिर से साइन इन करना पड़ता था)।
हालाँकि, यदि आपका पुराना संस्करण और आपका नया संस्करण दोनों xapktoapk.com का उपयोग करके परिवर्तित किए गए थे, तो हमारी नियतात्मक हस्ताक्षर पाइपलाइन सभी रूपांतरणों में समान सुसंगत हस्ताक्षर प्रमाणपत्र का उपयोग करती है - जिसका अर्थ है कि आप अपने इन-ऐप प्रगति को अनइंस्टॉल या खोए बिना सीधे पुराने परिवर्तित APK के शीर्ष पर नया परिवर्तित APK इंस्टॉल कर सकते हैं! यह पुष्टि करने के लिए ऊपर दिए गए तुलना टूल का उपयोग करें कि इंस्टॉल करने से पहले दोनों फ़ाइलें समान प्रमाणपत्र डाइजेस्ट साझा करती हैं।