मैं निम्नलिखित मेरी एंड्रॉयड प्रकट निर्धारित किया है:sd.canWrite() हमेशा रिटर्न झूठी
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
मैं अपने गतिविधि में निम्नलिखित है:
File sd = Environment.getExternalStorageDirectory();
boolean can_write = sd.canWrite();
एसडी रिटर्न/MNT/sdcard
मैं अपने डिवाइस (ईवो 3 डी) पर एमुलेटर नहीं परीक्षण कर रहा हूं। एसडी कार्ड घुड़सवार है। यह तब होता है जब प्रभारी केवल मोड और जब यूएसबी केबल प्लग नहीं किया जाता है। Google पर विभिन्न पेज और स्टैक पर पोस्ट दिखाते हैं कि एसडी कार्ड लिखने योग्य है या नहीं, इसलिए मुझे कुछ याद आना चाहिए।
अद्यतन:
मैं निम्नलिखित कोड का प्रयास करें और यह IOException अनुमति नहीं दी फेंकता है।
File TestFile = new File(sd + "/testfile.txt");
try {
boolean result = TestFile.createNewFile();
if(result)
{
Log.i("tag","successfully created file");
} else {
Log.i("tag","failed to create file");
}
} catch (IOException e) {
Log.e("tag",e.toString() + " " + TestFile);
return false;
}
मैं अपने sdcard स्वरूपित है, यह फिर से बढ़ गया है, और फोन रिबूट और अब भी वही त्रुटि की है।
अद्यतन
जाहिर है यह मेरी अपनी अज्ञानता है कि यह विफल वजह से है। मेरे पास मेरे मैनिफेस्ट के गलत खंड में मेरी अनुमतियां ब्लॉक थीं। धन्यवाद फिर से :)
आमतौर पर यह शिकायत करता है, तो कुछ गलत स्थान पर है कारण पता नहीं है के अनुसार है पता चलता है। आप अनुमति कहाँ डाल रहे थे? –
उपयोग-पर्समिशन कहां रखा जाए? पहले ही, आपका बहुत धन्यवाद। – twlkyao