2012-04-27 6 views
5

के लिए अशक्त रिटर्न जब कोडFile.list() निर्देशिका

File path = new File("/data"); 
boolean isDir = path.isDirectory(); 
//isDir is true 
String[] fList = path.list(); 
//fList == null! 

क्रियान्वित पास Android 2.3 एमुलेटर पर, फ़ाइल सूची रिक्त है। यह प्रलेखन http://developer.android.com/reference/java/io/File.html#list() से बयान का खंडन करने के लिए लगता है:

Returns null if this file is not a directory. 

यहाँ क्या गलत है?

उत्तर

3

आप /data डीआईआर तक नहीं पहुंच सकते हैं क्योंकि आपके पास रूट पहुंच नहीं है। रूट विशेषाधिकारों के बिना आप आंतरिक स्टोरेज पर केवल एक बाहरी स्टोरेज और अपने ऐप के डीआईआर तक पहुंच सकते हैं। इस उत्तर को देखें: https://stackoverflow.com/a/1043722/1037294

+0

संकेत के लिए धन्यवाद। मुझे निर्देशिका पथ दिए गए अनुमतियों की जांच कैसे करनी चाहिए? – Philipp

+0

दरअसल, आपको इसकी आवश्यकता नहीं है, क्योंकि आप पहले ही जानते हैं कि आप किन फाइलों तक पहुंच सकते हैं। इस संक्षिप्त पैराग्राफ को पढ़ें: [उपयोगकर्ता आईडी और फ़ाइल एक्सेस] (http://developer.android.com/guide/topics/security/security.html#userid) –

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