2013-11-26 8 views
5

मैं /sdcard/ फ़ोल्डर में फ़ाइलें प्राप्त करने की कोशिश, लेकिन यह NullPointerException
फेंकता है तो फिर मैं / पथ यहAndroid 4.4 फ़ाइलें सूची मुद्दा

40 
factory 
usbdisk 
sdcard 
storage 
config 
cache 
acct 
vendor 
d 
etc 
mnt 
ueventd.tuna.rc 
ueventd.rc 
ueventd.goldfish.rc 
system 
sys 
sepolicy 
seapp_contexts 
sbin 
res 
... and others 

वापसी है जब मैं 4.3 परियोजना में ऐसा में फ़ोल्डर पाने के लिए यह काम करता है की कोशिश की कुंआ!

अद्यतन

कोड 4.4 जिसमें

File file = Environment.getExternalStorageDirectory(); 
File[] files = file.listFiles(); 
Debugger.info(files.length); // NullPointerExcepton 
for(File f : files){ 
    Debugger.info(f.getName()); 
} 
+2

हमें 'नई फ़ाइल ("/ sdcard /") का मान दें। मौजूद है() '! यदि यह गलत है, तो सुनिश्चित करें कि यह मौजूद है ... इसके अलावा, अपनी अनुमतियां जांचें ... – tilpner

+0

मेरे पास '/ sdcard /' पथ है! –

उत्तर

3

Android Developers साइट राज्यों द्वारा sdcard पथ (किटकैट में महत्वपूर्ण व्यवहार में परिवर्तन) मिलना चाहिए

अपने अनुप्रयोग बाह्य संग्रहण से पढ़ता है ...

आपका ऐप बाहरी संग्रहण पर साझा फ़ाइलों को नहीं पढ़ सकता है जब एंड्रॉइड 4.4 पर चल रहा है, जब तक कि आपके ऐप में READ_EXTERNAL_STORAGE अनुमति न हो। यही है, द्वारा प्राप्त निर्देशिका के भीतर फ़ाइलें getExternalStoragePublicDirectory() अनुमति के बिना अब तक पहुंच योग्य नहीं हैं। हालांकि, अगर आपको getExternalFilesDir() द्वारा प्रदान की गई केवल अपनी ऐप-विशिष्ट निर्देशिकाओं तक पहुंचने की आवश्यकता है, तो आपको READ_EXTERNAL_STORAGE अनुमति की आवश्यकता नहीं है।

तो सुनिश्चित करें कि आप उपर्युक्त अनुमति दें। साथ ही, यदि आप एकाधिक एसडी कार्ड वाले डिवाइस का उपयोग कर रहे हैं तो आप this issue में चला सकते हैं।

+0

वाह, धन्यवाद यह अभी काम है !!!! ;) –

+0

खुशी है कि मैं मदद कर सकता हूँ :) – Angelo

2

अपने कोड में नहीं कठिन कोड sdcard पथ चाहिए काम नहीं। इसके बजाय, आप

android.os.Environment.getExternalStorageDirectory() 
+0

इसका कारण है 'NullPointerExeception' भी –

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