Intereting Posts
Android WindowManager TYPE_SYSTEM_ALERT Макет на ощупь Не работает кнопка ActionBar панели навигации. Ошибки сборки Android 5.0 с проблемой версии Java Наименьшая ширина для Galaxy S и Galaxy S2 Обновить или принудительно перерисовать фрагмент Декодирование потоковой передачи H264 с использованием андроида низкого уровня api Как сделать автоматическое обновление для Android-приложения Android Volley двойной пост, когда медленный запрос Хороший учебник по использованию AccountManager в Android? В чем разница между вызовом LayoutInflater напрямую и нет? Сообщение LogCat: Ресурсы служб Google Play не найдены. Проверьте конфигурацию проекта, чтобы обеспечить включение ресурсов Как подтвердить учетные данные устройства перед Android 5.0 (API 21)? Почему getCount в адаптере вызывается так много раз? Ошибка раздувания класса android.support.v4.view.ViewPager КоординаторLayout не заходит за строку состояния даже с окномTranslucentStatus и fitsSystemWindows

Удаление файла из внутреннего хранилища

Я пытаюсь удалить изображения, хранящиеся во внутреннем хранилище. Я придумал это до сих пор:

File dir = getFilesDir(); File file = new File(dir, id+".jpg"); boolean deleted = file.delete(); 

И это из другого вопроса, на который был дан ответ :

 File dir = getFilesDir(); File file = new File(dir, "my_filename"); boolean deleted = file.delete(); 

Мой пример всегда возвращает false. Я вижу файл fx 2930.jpg в DDMS в eclipse.

Solutions Collecting From Web of "Удаление файла из внутреннего хранилища"

getFilesDir() как-то не работает. Используя метод, который возвращает весь путь и имя файла, дал желаемый результат. Вот код:

 File file = new File(ih.getImgPath(id)); boolean deleted = file.delete(); 

Вы пробовали Context.deleteFile () ?

Это работает для меня:

 File file = new File(photoPath); file.delete(); context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.fromFile(new File(photoPath)))); 
 String dir = getFilesDir().getAbsolutePath(); File f0 = new File(dir, "myFile"); boolean d0 = f0.delete(); Log.w("Delete Check", "File deleted: " + dir + "/myFile " + d0); 

Код File dir = getFilesDir(); Не работает, потому что это запрос для объекта File. Вы пытаетесь получить строку, объявляющую путь к вашему каталогу, поэтому вам нужно объявить «dir» как String, а затем запросить, чтобы абсолютный путь каталога в форме String возвращался конструктором, который имеет доступ к этой информации ,

Вы также можете использовать: file.getCanonicalFile().delete();

Вы пытались getFilesDir().getAbsolutePath() ?

Кажется, вы исправили свою проблему, инициализируя объект File полным путем. Я считаю, что это тоже поможет.