Android — нет свободного места

#android #fileoutputstream #internal-storage

#Android #fileoutputstream #внутренняя память

Вопрос:

 try {           
    FileOutputStream fileOutputStream = new FileOutputStream(path);
    bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fileOutputStream);
    fileOutputStream.close();
} catch (Exception e) {
    e.printStackTrace();
}
  

Я пишу этот код для сохранения растрового изображения, и он работает нормально, пожалуйста, скажите мне, если во внутреннем хранилище не будет свободного места, что произойдет: остановить приложение? или просто игнорировал бы сохранение без каких-либо остановок и исключений? или просто сказал бы, что нет свободного места? или что-то еще?

Заранее благодарю вас.

Ответ №1:

Он выдает исключение, подобное этому: java.io.IOException: write failed: ENOSPC (No space left on device)

Комментарии:

1. спасибо, в этом случае приложение перестанет работать или только сообщит (на устройстве не осталось места)?

2. Вам нужно перехватить IOException и обработать его должным образом, например, сообщив пользователю, что произошла ошибка, или удалив другие файлы, созданные вашим приложением, и им больше не нужно освобождать место, и повторите попытку.