Android: como excluir o arquivo de imagem interno
O que eu quero fazer: excluir um arquivo de imagem do armazenamento interno privado no meu aplicativo. Eu salvo as imagens no armazenamento interno para que elas sejam excluídas na desinstalação do aplicativo.
Eu criei e salvei com sucesso:
String imageName = System.currentTimeMillis() + ".jpeg";
FileOutputStream fos = openFileOutput(imageName, Context.MODE_PRIVATE);
bitmap.compress(Bitmap.CompressFormat.JPEG, 35, fos);
uma imagem que eu recebo através
bitmap = BitmapFactory.decodeStream(inputStream);
Consigo recuperar a imagem posteriormente para exibição:
FileInputStream fis = openFileInput(imageName);
ByteArrayOutputStream bufStream = new ByteArrayOutputStream();
DataOutputStream outWriter = new DataOutputStream(bufStream);
int ch;
while((ch = fis.read()) != -1)
outWriter.write(ch);
outWriter.close();
byte[] data = bufStream.toByteArray();
bufStream.close();
fis.close();
imageBitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
Agora eu quero excluir este arquivo permanentemente. Eu tentei criar um novo arquivo e excluí-lo, mas o arquivo não foi encontrado:
File file = new File(imageName);
file.delete();
Eu li no site do desenvolvedor do Android que devo abrir arquivos internos privados usando oopenFileInput(...)
método que retorna um InputStream, permitindo que eu leia o conteúdo, do qual realmente não me importo - só quero excluí-lo.
alguém pode me indicar a direção certa para excluir um arquivo armazenado no armazenamento interno?