В эмуляторе я, может казаться, не пишу в приложенный SDCard. Следующий код всегда выкладывает, "не может записать, что корневое" сообщение журнала, но не "не может считать корень" один.
File routesRoot = Environment.getExternalStorageDirectory();
if (!routesRoot.canWrite())
Log.v(getClass().getSimpleName(), "can't write root");
if (!routesRoot.canRead())
Log.v(getClass().getSimpleName(), "can't read root");
Идеи?
Проверьте, а затем дважды проверьте, что у вас есть WRITE_EXTERNAL_STORAGE разрешение.