2011-12-25 2 views
1

Я пытаюсь написать файл MIDI на SD-карте. Он работает на моем устройстве, но не в эмуляторе. Вот ошибка на LogCat:Невозможно записать файлы на эмулятор sdcard android

12-25 09:18:27.733: W/ExternalStorage(1951): Error create /sdcard/download/test.mid 
12-25 09:18:27.733: W/ExternalStorage(1951): java.io.FileNotFoundException: /sdcard/download/test.mid 
12-25 09:18:27.733: W/ExternalStorage(1951): at org.apache.harmony.luni.platform.OSFileSystem.open(OSFileSystem.java:244) 
12-25 09:18:27.733: W/ExternalStorage(1951): at java.io.FileOutputStream.<init>(FileOutputStream.java:97) 
12-25 09:18:27.733: W/ExternalStorage(1951): at java.io.FileOutputStream.<init>(FileOutputStream.java:168) 
12-25 09:18:27.733: W/ExternalStorage(1951): at java.io.FileOutputStream.<init>(FileOutputStream.java:147) 

Я установил разрешение в файле манифеста, и изменить путь от «/sdcard/download/test.mid» в Environment.getExternalStorageDirectory() + "/ скачать/test.mid ", но все равно не работает.

FYI, я использую Kevin Boone's MidiFile класс, и вот мой код:

String state = Environment.getExternalStorageState(); 
    if (Environment.MEDIA_MOUNTED.equals(state)) { 
     mf.writeToFile(Environment.getExternalStorageDirectory()+"/download/test.mid"); 
    } 

ответ

2

Ну сначала убедитесь, что у вас есть соответствующие разрешения, если не добавить это вы AndroidManifest.xml

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

Во-вторых, вы также должны проверить, существует ли папка загрузки, если вы не должны ее создавать. Проверьте, существует ли метод из класса File.

Если вы посмотрите на метод MidiFile Кевина использовать его только создать файл на определенном пути он не обеспечивает путь существует, что ваша работа

mg.writeToFile ("somefile.mid"); 
+0

Спасибо, это решит мою проблему :) –

0

Я предлагаю проверить, если у вас есть SDCard emaulator в создается с разрешениями писать на нем.

см это: Android Emulator sdcard push error: Read-only file system

После того, как вы через этот шаг, я думаю, что это будет работать для вас, а также программно.

Смежные вопросы