Android एप्लिकेशन के साथ इस बहुत ही अजीब व्यवहार का अवलोकन किया। अनुमानित परिदृश्य:
- संस्करण ए डिवाइस पर स्थापित है
- एप्लिकेशन ठीक काम करता है
- डिवाइस पर स्थापित संस्करण B (B> A)
- एप्लिकेशन ठीक काम करता है
- बैटरी ड्रेन के कारण डिवाइस बंद हो जाता है
- डिवाइस चालू हो गया
- अनुप्रयोग का संस्करण A फिर से डिवाइस पर चलता है
अतिरिक्त जानकारी:
- एप्लिकेशन को Google Play के माध्यम से वितरित नहीं किया गया है, लेकिन USB कनेक्शन के माध्यम से स्थापित किया गया है (नोट: एप्लिकेशन उत्पादन में चलता है; यह AndroidStudio के माध्यम से स्थापित नहीं है)।
- कीओस्क
- Android 5.1 (एपीआई 22)
मुझे लगता है कि मुझे दो प्रश्न मिले हैं:
- डिवाइस ने एपीके के पुराने संस्करण को कैश क्यों किया (और इसे कैश कहां किया)?
- किन परिस्थितियों में एप्लिकेशन उस तरह पिछले संस्करणों में वापस रोल कर सकते हैं?
संपादित करें (अधिक जानकारी):
- ऐसा लगता है कि एपीके को वापस ले जाने के बाद, एप्लिकेशन कुछ अनुमतियाँ खो देता है (शायद सभी भी)। एंड्रॉइड के एपीआई से सिक्योरिटी एक्ससेप्शन के कारण रोल-बैक से पहले काम करने वाली कार्यक्षमता काम करना बंद कर देती है। यह तब भी होता है, जबकि Android के इस संस्करण में अभी तक रनटाइम अनुमति नहीं है!
- टेबलेट के फाइल सिस्टम ब्राउज़ कर के बाद, मैं वास्तव में देखने के कई एप्लिकेशन के APK की समान पथ के तहत रहने वाले:
/data/app/com.myapp-2/base.apk,/data/app/com.myapp-3/base.apk, आदि
मेरी वर्तमान परिकल्पना यह है कि बैटरी ड्रेन टैबलेट को उसकी स्थिति को "रीसेट" करने का कारण बनता है (उदाहरण के लिए, घड़ी भी रीसेट है), और जब इसे फिर से संचालित किया जाता है तो यह ऐप के APK के बीच भ्रमित करता है और गलत लोड करता है।
हालांकि, मेरे पास कोई सुराग नहीं है कि यह ऐसा क्यों करेगा, या इस व्यवहार को कैसे रोका जाएगा।