2012-06-26 22 views
6

एंड्रॉइड में, बाह्य भंडारण के बीच क्या अंतर है जो अचूक (आंतरिक) और आंतरिक भंडारण है? मुझे यकीन नहीं है कि मेरा डेटा कहां से सहेजना है। मैं तो बस, एक खेल आँकड़े है कि एक व्यक्ति किसी भी समय खींच सकते हैं बचाने की जरूरत है वे चाहते हैंबाह्य-आंतरिक भंडारण

आप

उत्तर

13

कई नए उपकरणों में अब भौतिक भेद नहीं होगा, "आंतरिक" और "बाहरी" भंडारण एक ही फ्लैश चिप्स को बिना आवंटित आवंटन के साझा किए बिना, इसलिए अंतर वास्तव में इच्छित पहुंच प्रतिमान में से एक बना रहता है।

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

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

आपकी निर्णय प्रक्रिया की संभावना कुछ इस तरह होनी चाहिए: क्या यह स्वामित्व वाले एप्लिकेशन के लिए निजी होना है? यदि ऐसा है, तो इसे आंतरिक संग्रहण पर रखें, जब तक कि यह पुराने उपकरणों पर बहुत बड़ा और लक्षित न हो, उस स्थिति में बाहरी संग्रहण को रखने से पहले आपको सुरक्षा के लिए एन्क्रिप्ट करना और/या साइन करना पड़ सकता है। अन्यथा, यदि इसे साझा करने का मतलब है, तो मनमाने ढंग से अन्य घटकों (ईमेल ऐप, आदि) को सौंपने की आवश्यकता है, या यह बड़ा है, इसे बाहरी भंडारण पर रखें।

+0

पीड़ित। विस्तृत उत्तर के लिए धन्यवाद। मुझे लगता है कि हर डिवाइस में बाहरी भंडारण सही है? मेरा मतलब है कि मुझे बाहरी भंडारण न होने की चिंता करने की आवश्यकता नहीं है और मेरी बचत तंत्र – Snake

+0

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

+0

आपकी सहायता के लिए बिल्कुल सही धन्यवाद – Snake

7

एंड्रॉयड में धन्यवाद क्या बाह्य भंडारण के बीच अंतर यह है कि nonremovable (आंतरिक) और आंतरिक भंडारण?

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

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

+0

या एडीबी के माध्यम से कौन से ऐप्स फ़ाइल सेटिंग्स के साथ अनुमति देते हैं। –

1

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

आप कुछ इस तरह का उपयोग कर सकते हैं:

if(isSDPresent) 
{ 
    // SD Card is present 
    // Your code goes here, files will be located @ /mnt/sdcard/Android/data/packagename 
} 
else 
{ 
    // SD Card is not presenet 
    // files located here /data/data/packagename 
} 

आप एक एमुलेटर पर परीक्षण कर रहे हैं, तो आप अपने डी डी एम एस लोड और सभी revlent स्थानों में संग्रहीत फ़ाइलों पा सकते हैं।

उम्मीद है कि इससे मदद मिलती है।

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