सिस्टम ऐप और उपयोगकर्ता ऐप के बीच अंतर क्या हैं?


28

जैसा कि मैंने विभिन्न रोमों के साथ खेला है और टाइटेनियम बैकअप का उपयोग किया है, मैं देखता हूं कि एप्लिकेशन सिस्टम और उपयोगकर्ता ऐप में वर्गीकृत किए गए हैं। कई ROM डेवलपर्स कहते हैं कि टाइटेनियम बैकअप का उपयोग केवल उपयोगकर्ता ऐप्स के लिए किया जाना चाहिए न कि सिस्टम ऐप्स के लिए, और जब मैं सिस्टम ऐप की स्थापना रद्द करने के लिए आगे बढ़ता हूं, तो TiBu मुझे चेतावनी देता है कि ROM सही तरीके से काम नहीं कर सकता है।

इस तथ्य के अलावा कि उपयोगकर्ता एप्लिकेशन बाजार या किसी अन्य माध्यम से डाउनलोड करने योग्य हैं, दोनों के बीच महत्वपूर्ण अंतर क्या हैं?

यह उन सिस्टम ऐप्स के बारे में क्या है जो उन्हें ओएस के लिए अधिक अभिन्न बनाते हैं?

जवाबों:


20

/systemकेवल रूट के बिना रीड-ओनली है इसलिए यह एप्लिकेशन को अनइंस्टॉल करने से रोकता है /system/appऔर /system/priv-app। जो एप्लिकेशन क्रिटिकल हैं, उन्हें वहां डाल दिया जाता है ताकि उन्हें अनइंस्टॉल न किया जा सके। कैरियर ब्लोटवेयर जो वे आपको निकालने नहीं देना चाहते हैं, वहां भी डाल दिया गया है। यदि आप निहित हैं, तो ऐप्स की बाद वाली श्रेणी को हटाया जा सकता है; पूर्व, इतना नहीं।

/system/priv-appएप्स का उपयोग signatureOrSystemऔर अन्य विशेषाधिकार प्राप्त अनुमतियों को स्थापित करने की अनुमति देता है। स्टीफन के जवाब के कुछ उदाहरण हैं।

जैसे कि ऐप्स महत्वपूर्ण क्यों हो सकते हैं, यह ROM पर निर्भर करता है। उदाहरण के लिए, मैं जो सुनता हूं, उनके एचटीसी के सेंस उनके बिल्ट-इन ऐप्स पर काफी निर्भर हैं। वे बस अपने यूआई को ऐसे डिज़ाइन नहीं करते थे कि यह मूल रूप से थर्ड पार्टी ऐप के साथ काम करेगा (या सिस्टम ऐप के गायब होने पर अच्छी तरह से विफल हो जाएगा)। अन्य ऐप अनिवार्य रूप से एंड्रॉइड ओएस का हिस्सा हैं, लेकिन Google ने उन्हें ऐप / सेवाओं (संभवतः एन्कैप्सुलेशन और विश्वसनीयता कारणों) के रूप में कोडित किया है।

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


क्या इसका मतलब यह भी है कि कार्य हत्यारों द्वारा एक सिस्टम ऐप कैंट को मार दिया जाए ?? या अगर वे मारे गए तो ऑटो शुरू कर देंगे ??
आशिष

@ashishsony सिस्टम सेवाएँ सामान्य रूप से स्वतः-प्रारंभ की जाती हैं, हाँ, लेकिन (अधिकांश?) ऐप्स / सेवाओं को अभी भी मारा जा सकता है। उदाहरण के लिए मैं अपने डिवाइस पर ब्राउज़र को मार सकता हूं। (हत्यारे कितने बुरे हैं, इसके बारे में सामान्य सलाह डालें।)
मैथ्यू पढ़ें

सही, HTC डिवाइसेस पर सिस्टम ऐप (यहां तक ​​कि ड्रॉपबॉक्स, फेसबुक जैसे) भी सेंस यूआई के साथ बहुत गहराई से एकीकृत हैं। उन्हें हटाने से बचना चाहिए; उपयोगकर्ता ऐप्स को सिस्टम ऐप्स में कनवर्ट करना भी तब तक नहीं किया जाना चाहिए जब तक कि कुछ रोम पर बहुत कम आवश्यक न हों, क्योंकि वे कम मेमोरी स्थिति के तहत समाप्त नहीं हो सकते हैं।
आशीष कुमार सिंह 16

1
@all एक प्रोग्राम संबंधी अंतर सिस्टम (निजी-ऐप) एप्लिकेशन प्राप्त करता है, जो सिस्टम सेटिंग्स से भी एक सिस्टम प्रसारण प्राप्त होता है, यहां तक ​​कि एप्लिकेशन सेटिंग्स से भी बल_स्टॉप होता है, जब (उपयोगकर्ता-ऐप) गैर-सिस्टम ऐप किसी भी प्रसारण को प्राप्त नहीं कर सकता है यदि डिवाइस सेटिंग्स से बल_स्टॉप है।
ज़ला जनकसिंह

22

अन्य उत्तर सही हैं, लेकिन कुछ अंतरों को इंगित करने में विफल हैं:

अनुमतियां

सिस्टम एप्लिकेशन को कुछ सिस्टम-केवल अनुमतियों के लिए अनुरोध करने की क्षमता दी जाती है जो उपयोगकर्ता ऐप्स के लिए कभी उपलब्ध नहीं होती हैं। यह रूट / sudo / su अनुमतियों के समान नहीं है।

एक उदाहरण जो मैं जानता हूं और दैनिक उपयोग करता है वह मिस्ड कॉल अधिसूचना काउंटर को रीसेट करने की क्षमता है। मेरे पास गो डायलर है, जो स्टॉक डायलर और संपर्क ऐप (आप फोन कॉल कैसे करते हैं) के लिए एक प्रतिस्थापन है। जब मुझे कॉल याद आती है, तो Android मुझे एक सूचना देता है। हालाँकि, गो डायलर को इस काउंटर को रीसेट करने की अनुमति नहीं है, भले ही यह एप्लिकेशन इंस्टॉल करते समय आपसे उस अनुमति के लिए कहता है। एंड्रॉइड 2.2 और पहले के उपयोगकर्ता ऐप इसे रीसेट करते हैं, लेकिन इस अनुमति ने एंड्रॉइड 2.3 के लिए सिस्टम-केवल सुलभ अनुमति दी है

मेरे गो डायलर ऐप को सिस्टम विभाजन में ले जाकर, इस काउंटर को रीसेट करने की अनुमति है। ऐप के लिए रूट की आवश्यकता नहीं है (सिवाय, वास्तव में, सिस्टम विभाजन में ऐप को स्थानांतरित करने के लिए)।

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

अपडेट

सिस्टम एप्स को यूजर एप्स की तरह ही अपडेट किया जा सकता है, लेकिन अपडेट को कभी ओरिजिनल रोम में इंटीग्रेट नहीं किया जाता है। यही है, सिस्टम ऐप्स में उस संस्करण को वापस रोल करने की अनूठी क्षमता है जो पहले मौजूद था जब रोम स्थापित किया गया था।

एसडी को स्थानांतरित करें

एंड्रॉइड उपयोगकर्ताओं userको आंतरिक मेमोरी से एसडी कार्ड में ऐप्स स्थानांतरित करने देता है । सिस्टम ऐप्स को स्थानांतरित नहीं किया जा सकता है और हमेशा कुछ आंतरिक स्थान लेते हैं। अधिकांश (सभी?) डिवाइस, हालांकि, एक अलग विभाजन पर आंतरिक उपयोगकर्ता ऐप हैं, इसलिए एक सिस्टम ऐप को अनइंस्टॉल करने से आपको कोई और उपयोगकर्ता ऐप स्पेस नहीं मिलेगा (हटाए जा रहे दलिक-कैश के अलावा)।

यदि आप किसी सिस्टम ऐप में किसी भी अपडेट को अनइंस्टॉल करते हैं तो आप कुछ जगह की वसूली करेंगे। जैसा कि कहा गया है, अपडेट रोम के साथ एकीकृत नहीं हैं और इस प्रकार उपयोगकर्ता स्थान में संग्रहीत हैं। अपडेट को sd कार्ड में जाने की अनुमति नहीं है, लेकिन यदि हटा दिया जाता है, तो उपयोगकर्ता स्थान पुनः प्राप्त होता है।

यह आपको कैसे प्रभावित करता है

यदि आप एक आकस्मिक एंड्रॉइड उपयोगकर्ता हैं, तो आप संभवतः उन परिदृश्यों में नहीं चलेंगे जहां सिस्टम बनाम उपयोगकर्ता ऐप से फर्क पड़ेगा। यदि आप एक उन्नत उपयोगकर्ता हैं, तो आपके पास रूट होने की संभावना है और इस प्रकार यदि आप कभी भी इन स्थितियों में से एक में चलते हैं, तो उपयोगकर्ता (और इसके विपरीत) के लिए एक सिस्टम ऐप बदल सकते हैं।


1
क्या आपका मतलब था "यह रूट / सु परमिशन के समान नहीं है"? मुझे लगता है कि याद करते हैं sudoऔर suसमान नहीं हैं - कम से कम यूनिक्स और लिनक्स में।
चुंगपाम

आप सही कह रहे हैं कि सु और सुडो * निक्स में भिन्न हैं। लेकिन sudoयहां अधिक लागू है, क्योंकि sudo रूट विशेषाधिकारों के लिए पूछ रहा है, जबकि suबस स्विच उपयोगकर्ता से पूछ रहा है। सु का उपयोग करने के लिए, आपको केवल उस खाते का पासवर्ड जानना होगा, जिस पर आप स्विच कर रहे हैं; यदि आप कोई खाता निर्दिष्ट नहीं करते हैं, तो आप रूट बनने के लिए कह रहे हैं। एंड्रॉइड में, हालांकि, कोई रूट पासवर्ड नहीं है, न ही कोई अन्य खाता है, इसलिए suउपयोगकर्ताओं को रूट विशेषाधिकार प्राप्त करने के लिए टर्मिनल में चलाने के लिए कमांड द्वारा जाना जाता है।
स्टीफन श्रुगर

किसी भी दर पर, मैं इसमें शामिल होने के उत्तर को अपडेट करूंगा su, क्योंकि कुछ एंड्रॉइड उपयोगकर्ता रूट के बराबर हैं।
स्टीफन स्क्रैगर

4

सिस्टम एप्स वे एप होते हैं जो सिस्टम के भीतर शामिल होते हैं। वे / सिस्टम / ऐप फ़ोल्डर में स्थित हैं।

डिवाइस को चलाने के लिए उनमें से अधिकांश की आवश्यकता होती है। इनमें से कुछ का एक उदाहरण डायलर है, जो सभी नेटवर्क कनेक्टिविटी और ब्राउज़र को सेट करता है, जिसके बिना कोई इन-ऐप वेबव्यू काम नहीं करेगा।


1
डायलर नेटवर्क कनेक्टिविटी स्थापित करता है?
मैथ्यू

2
@MatthewRead हाँ - यह करता है! वास्तविक 'डायलर' डायलर एप्लिकेशन में स्थित एक अलग गतिविधि है। Dialer.apk कनेक्टिविटी को सेट करने वाला ऐप है - यदि आप प्रूफ चाहते हैं, तो डायलर और डायलर स्टोरेज ऐप्स को फ्रीज करें, नेटवर्क काम नहीं करेगा।
लियाम डब्ल्यू।

यह काफी अजीब है!
मैथ्यू

Android अजीब है!
लियाम डब्ल्यू

3

मैं उपरोक्त उत्तरों में कुछ जोड़ना चाहूंगा। उपयोगकर्ता ऐप्स के विपरीत सिस्टम ऐप्स को एक पूर्ण फ़ैक्टरी रीसेट में हटाया नहीं जा सकता है। इसलिए यदि आप अपनी सभी व्यक्तिगत फ़ाइलों को हटाना चाहते हैं, लेकिन वे बहुत आसानी से हटाए जा सकते हैं, तो एक फ़ैक्टरी रीसेट केवल सबसे सुविधाजनक है, और आपके पास ऐसे ऐप्स हैं जिन्हें आप रखना चाहते हैं, आप उन ऐप्स को सिस्टम ऐप में बदल सकते हैं ताकि वे जीते फ़ैक्टरी रीसेट के दौरान मिटाया नहीं जाना चाहिए।


1
दिलचस्प टिप! मैं अपने संगीत को अब सिस्टम में स्थानांतरित करना चाहता हूं
FreeSoftwareServers

2

सिस्टम ऐप्स की एक अन्य विशेषता यह है कि वे देशी पुस्तकालयों (का उपयोग है libsomething.so आम प्रणाली पुस्तकालयों निर्देशिका (आमतौर पर से फाइल) / system / lib या / system / lib64 और नहीं (जैसे, एप्लिकेशन-निजी पुस्तकालयों निर्देशिका से), / डेटा /app/com.example.HelloJni/lib/arm )। एंड्रॉइड नौगट से पहले, उपयोगकर्ता एप्लिकेशन सिस्टम के मूल पुस्तकालयों को लोड करने और उपयोग करने के लिए स्वतंत्र थे। प्रतिबंध बाद में लगाए गए हैं, देखें https://developer.android.com/about/versions/nougat/android-7.0-changes.html#ndk

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.