В настоящее время я пытаюсь найти способ записи файла мультимедиа во внутреннее / внешнее хранилище (основное хранилище). Сохраняемый файл может иметь любой размер от нескольких МБ до 50 МБ. У меня есть логика, которая работает на моем Droid X 2.3.3 Razr 2.3.5 (я верю), но не работает на моем Galaxy Nexus (не имеет съемного хранилища, но имеет встроенную карту 16Gig с v4.0.2). Я посмотрел вокруг и не нашел ни одного кода / примеров, которые работают с v4.0. Может быть, я подхожу к этому все неправильно, поскольку у него нет фактической SD-карты? может быть, это что-то новое в v4.0? В настоящее время, когда я запускаю свое приложение на Galaxy Nexus, я получаю следующее: System.err (19520): java.io.FileNotFoundException:
ОБНОВЛЕНО
InputStream inputStream = urlConnection.getInputStream();
File PATH = Environment.getExternalStorageDirectory();
File FILE = new File(Environment.getExternalStorageDirectory()+ "/" + FILENAME);
ByteArrayOutputStream byteBuffer = new ByteArrayOutputStream();
// buffer int bufferSize = 1024; int bufferLength = 0; byte[] buffer = new byte[bufferSize];
while ((bufferLength = inputStream.read(buffer)) != -1) {
byteBuffer.write(buffer, 0, bufferLength);
}
byte[] temp = byteBuffer.toByteArray();
FileOutputStream fos = new FileOutputStream(FILE);
fos.write(temp);
fos.close();