2011-11-22 79 views
0

我已閱讀了很多帖子,但仍然沒有答案。在添加WRITE_EXTERNAL_STORAGE後,檢查sd卡是否可寫入和掛載,我仍然得到「文件的父目錄不可寫入」。我正在使用eclipse和模擬器並將SdkVersion設置爲「7」。爲什麼我會得到「文件的父目錄不可寫?」

我該如何寫入SD卡?

示例代碼如下:

<uses-premission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
    . 
    . 
    . 

    checkSDStatus(); 
    . 
    . 
    . 

    File sdCardRoot = Environment.getExternalStorageDirectory(); 

    // Check state of SD card 
    String sdState = Environment.getExternalStorageState(); 
    Log.d("--- state ---", sdState); 

    File dir = new File (sdCardRoot.getAbsolutePath() + "/download"); 
    dir.mkdirs(); 

    File file = new File(dir, fileName); 

    . 
    . 
    . 

    private void checkSDStatus(){ 
     boolean mExternalStorageAvailable = false; 
     boolean mExternalStorageWriteable = false; 
     String state = Environment.getExternalStorageState(); 

     if (Environment.MEDIA_MOUNTED.equals(state)) { 
      mExternalStorageAvailable = mExternalStorageWriteable = true; 
      Log.d("-- sd card --", "-- card writable --"); 
     } else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) { 
      mExternalStorageAvailable = true; 
      mExternalStorageWriteable = false; 
      Log.d("-- sd card --", "-- card read only --"); 
     } else { 
      mExternalStorageAvailable = mExternalStorageWriteable = false; 
      Log.d("-- sd card --", "-- card unvailable --"); 
     } 
    } 

回答

0

好吧,我會回答我的問題等。

之前幾次添加到我的清單文件後,我沒有任何損失,所以我複製了它的另一個版本並將其添加到現有權限下面的清單中。

的權限出現相同的眼睛,但我刪除了舊的和使用我英寸

複製新我重新運行的應用程序和它的工作!也許在磁盤上有一個錯誤,清單文件由於某種原因沒有被讀取,或者什麼 - 至少現在起作用了!

如果有人知道我爲什麼肯定想聽到這個問題的原因!

相關問題