2012-01-03 20 views
8

क्या यह पता लगाने का कोई तरीका है कि एपीके एसडी कार्ड पर संग्रहीत है या नहीं? कैसे?क्या यह पता लगाने का कोई तरीका है कि एपीके एसडी कार्ड पर संग्रहीत है या नहीं?

+0

+1: आंतरिक बाह्य भंडारण बनाम को पत्र लिखा फ़ाइलों तक पहुँचने के संदर्भ में यह एड, API level 7 दिशा-निर्देश या कम के अनुसार। लेकिन आश्चर्य है कि आपको एसडीकार्ड या फोन में ऐप इंस्टॉल किया गया है या नहीं? –

+0

नहीं, मुझे यह पता लगाने की आवश्यकता है कि ऐप इंस्टॉल है या नहीं (केवल एसडी कार्ड पर) – user1074896

+0

यह प्रश्न एक डुप्लिकेट है: http://stackoverflow.com/questions/4004650/android-2-2-how-do- I-detect-if-i-am-install-on-the-sdcard-or- को छोड़कर, जैसा कि बाद का उत्तर केवल API स्तर 8 और ऊपर से संबंधित है। लिंक किया गया पृष्ठ FLAG_EXTERNAL_STORAGE ध्वज का उपयोग करने का सुझाव देता है, जो वांछित विशिष्ट उद्देश्य के लिए है। यह ध्वज एपीआई स्तर 8. – Carl

उत्तर

0

हाँ ... आप एक ही पता लगा सकते हैं ...

क्षुधा Android Market से डाउनलोड /डेटा/एप्लिकेशन (एसडी कार्ड में नहीं) में जमा हो जाती है। डिफ़ॉल्ट सिस्टम अनुप्रयोगों /system/app

हालांकि में जमा हो जाती, जड़ें फोन /sdcard/बैकअप/क्षुधा में आवेदन पत्र जमा कर सकते हैं

+1

में उपलब्ध हो गया और आप इसका पता कैसे लगा सकते हैं? –

+0

कुछ हालिया फ्लैग ऐप्स उनके मैनिफेस्ट में सेट कर सकते हैं अगर वे एसडी कार्ड पर स्थापित करना पसंद करते हैं ... – Anders

+0

डिफ़ॉल्ट रूप से फोन मेमोरी पर बाजार से हर ऐप इंस्टॉल हो जाता है। डिवाइस को रूट किए बिना इसे एसडी कार्ड में स्थानांतरित करने का कोई तरीका नहीं है। ** Apps2SD ** ऐप्स को आंतरिक मेमोरी से केवल रूट डिवाइस पर एसडी कार्ड में स्थानांतरित करने में मदद करता है। और जैसा ऊपर बताया गया है, getAplicationInfo()। SourceDir का उपयोग स्थान का पता लगाने के लिए किया जा सकता है। – Anil

0
 File f = new file(Environment.getExternalStorageDirectory()+"your apk name"); 
    sytem,out.println(""+f.exsits); 
1

स्वीकार्य उत्तर को और अधिक ठोस बनाने के लिए, यहां एक उदाहरण है कि मैं कैसे हूं प्रश्न के लिए

{ //... 
    mInternalApp = context.getApplicationInfo().sourceDir.matches("^/data/app/.*"); 
    mPathInternal = context.getApplicationInfo().dataDir + "/files/"; 
    mPathExternal = Environment.getExternalStorageDirectory() + "/Android/data/" 
       + PACKAGE_NAME + "/files/"; 
} 

private File getMyFile() { 
    return (mInternalApp) ? new File(mPathInternal + INT_FILE_NAME) : 
          new File(mPathExternal + EXT_FILE_NAME); 
} 
संबंधित मुद्दे

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