2013-02-07 21 views
8

मेरे पास एक सिस्टम ऐप है जो OEM सिस्टम छवि के साथ स्थापित करता है, लेकिन मेरे द्वारा हस्ताक्षरित है। यदि मैं बाजार में एक अपडेटेड एपीके अपलोड करता हूं, तो क्या बाजार ऐप चुपचाप इस अपडेट को इंस्टॉल करेगा?एंड्रॉइड सिस्टम ऐप का अपडेट, प्लेटफ़ॉर्म हस्ताक्षर के साथ/बिना

यदि मेरा सिस्टम ऐप इसके बजाय प्लेटफ़ॉर्म हस्ताक्षर के साथ हस्ताक्षरित है, तो इसका मतलब है कि किसी भी अपडेट को प्लेटफ़ॉर्म हस्ताक्षर के साथ भी हस्ताक्षर करना होगा, सही? क्या प्लेटफॉर्म पर हस्ताक्षरित एपीके बाजार से अपडेट किया जा सकता है?

उत्तर

6

सबसे पहले सभी प्रकार के ऐप्स के बीच अंतर को स्पष्ट करने दें।

सिस्टम ऐप्स वे हैं जो /system/app फ़ोल्डर में स्थित हैं। इन अनुप्रयोगों में ध्वज ApplicationInfo.FLAG_SYSTEM सेट है। एक साधारण डिवाइस में विभाजन /system केवल पढ़ने के लिए उपयोग के लिए रखा जाता है। इस प्रकार, एक सिस्टम अनुप्रयोग को अद्यतन नहीं किया जा सकता है क्योंकि यह केवल पढ़ने के लिए स्थान पर स्थित है। इन अनुप्रयोगों को केवल ओटीए अपडेट के हिस्से के रूप में अपडेट किया जा सकता है।

सामान्य ऐप्स/डेटा विभाजन पर स्थित होते हैं जो पढ़ना लिखते हैं। इस प्रकार, इन अनुप्रयोगों को एक सिस्टम द्वारा अद्यतन किया जा सकता है।

अब हस्ताक्षर के बारे में बात करते हैं। कुछ एंड्रॉइड घटक हस्ताक्षर प्रकार की अनुमतियों से सुरक्षित हैं। इसका अर्थ यह है कि यदि आप इस प्रकार की अनुमति से संरक्षित घटक तक पहुंच प्राप्त करना चाहते हैं, तो आपके आवेदन को एक ही प्रमाणपत्र के साथ संरक्षित घटक के रूप में हस्ताक्षरित होना चाहिए। यह न केवल एंड्रॉइड सिस्टम के लिए, बल्कि एंड्रॉइड अनुप्रयोगों के लिए भी सही है, यानी आपके आवेदन में आपके पास एक घटक हो सकता है जो एक हस्ताक्षर अनुमति से संरक्षित है, इस प्रकार, केवल उसी अनुप्रयोग वाले अनुप्रयोगों के पास इस घटक तक पहुंच होगी।

तीसरी थीसिस जो हमें आपके प्रश्न का उत्तर देने की आवश्यकता है वह यह है कि एंड्रॉइड उन पैकेजों की स्थापना को प्रतिबंधित करता है जिनमें समान पैकेज नाम है लेकिन अलग-अलग हस्ताक्षर हैं।

इस प्रकार,

मुझे लगता है कि OEM प्रणाली छवि के साथ स्थापित करता है एक प्रणाली एप्लिकेशन है, लेकिन मेरे द्वारा हस्ताक्षरित है। यदि मैं बाजार में एक अपडेटेड एपीके अपलोड करता हूं, तो बाजार ऐप चुपचाप इस अपडेट को इंस्टॉल करेगा?

अपने सिस्टम एप्लिकेशन के बजाय मंच हस्ताक्षर के बजाय मेरा के साथ हस्ताक्षरित है, तो इसका अर्थ अपडेट भी मंच हस्ताक्षर, सही के साथ साइन इन रहना होगा? क्या प्लेटफार्म-हस्ताक्षरित एपीके बाजार से अपडेट किया जा सकता है?

उत्तर नहीं है। यद्यपि/system/app में स्थित ऐप्स को प्लेटफ़ॉर्म से अलग प्रमाणपत्र के साथ हस्ताक्षरित किया जा सकता है, लेकिन इन अनुप्रयोगों का अद्यतन केवल सिस्टम अपडेट के साथ संभव है।

अपनी समस्या का समाधान करने के लिए आप अपने आवेदन के पैकेजगेम को बदल सकते हैं, इसे अपने (यदि एप्लिकेशन को संरक्षित एंड्रॉइड घटकों तक पहुंच की आवश्यकता नहीं है) या प्लेटफ़ॉर्म (यदि एप्लिकेशन को संरक्षित घटकों तक पहुंच होनी चाहिए और यदि आपके पास इस हस्ताक्षर तक पहुंच है) और इस एप्लिकेशन को बाजार में रखें। फिर, आपको बाजार के माध्यम से अपने आवेदन के अपडेट प्राप्त होंगे।

+2

अन्य उत्तर संकेत मिलता है कि प्रणाली क्षुधा अद्यतन किया जा सकता से मेल खाता है एक अद्यतन के रूप में में एक apk/डेटा/एप्लिकेशन का इलाज नहीं होगा: // stackoverflow .com/प्रश्न/7825045/कर सकते हैं एक प्रणाली एप्लिकेशन के अंतर्गत होने वाली अपडेट किया गया।अद्यतन एपीके/डेटा/ऐप में स्थापित है और सिस्टम इसके बजाय उस अद्यतन संस्करण का उपयोग करता है। उपयोगकर्ता संभावित रूप से इस अद्यतन संस्करण को अनइंस्टॉल कर सकता है, लेकिन मूल संस्करण/system/app में नहीं। –

+0

मुझे इस संभावना के बारे में पता नहीं है। हालांकि, एप्लिकेशन/डेटा/ऐप फ़ोल्डर में स्थापित किया जाएगा और यह मेरे उत्तर के विपरीत नहीं है।/सिस्टम फ़ोल्डर केवल सिस्टम अपडेट के साथ अद्यतन किया जा सकता है। किसी भी मामले में, इस प्रश्न के स्पष्टीकरण के लिए धन्यवाद! – Yury

+2

Google ऐप्स को सिस्टम ऐप्स फ़ोल्डर में अपडेट होने पर भी अपडेट किया जाता है – amalBit

0

प्रणाली जब तक signatur उदाहरण http के लिए, में/system/एपी एक

संबंधित मुद्दे