Wyczyść listę pobrań Androida

Próbuję zrobić aplikację, która będzie czyściła moje urządzenie, między innymi chciałbym, aby usunęła wszystkie pliki znajdujące się w moimDownload reż. Używam takiej metody do usuwania plików:

private static void deleteFiles(File path) {
    Util.Log("deleting all files underneath " + path.getName());
    if( path.exists() && path.isDirectory() ) {
        File[] files = path.listFiles();
        for(int i=0; i<files.length; i++) {
            if(files[i].isDirectory()) {
                Util.Log(files[i].getName() + " is a dir, being recursive.");
                deleteFiles(files[i]);
            }else {
                Util.Log(files[i].getName() + " is a file, deleting it.");
                files[i].delete();
            }
        }
    }
}

To właściwie usuwa pliki (zweryfikowałem z menedżerem plików i podłącziłem do komputera). Ale jeśli otworzę aplikację „Pobrane” na moim urządzeniu, wszystkie pliki będą tam nadal wyświetlane. Kiedy klikam na jeden z nich, pojawia się okienko z komunikatem „Nie znaleziono pobranego pliku. [Spróbuj ponownie] [Usuń]. Ponowne naciśnięcie spróbuje ponownie pobrać plik, naciśnięcie Delete spowoduje usunięcie wpisu z listy. jest jakaś transmisja lub coś, co mogę użyć, aby powiedzieć tej aplikacji do pobrania, że ​​chcę „odświeżyć” lub „zsynchronizować” z bieżącym systemem plików, tak aby rozpoznał, że pliki zostały usunięte.

Podobna sytuacja występuje podczas usuwania obrazów zDCIM reż., po usunięciu nadal będą się pojawiać w aplikacji „Galeria”. Udało mi się wyemitować cel MEDIA_MOUNTED, który spowodował, że aplikacja Galeria „odświeżyła” bieżące pliki (które następnie prawidłowo usunęły obrazy z aplikacji Galeria). Wydaje się jednak, że MEDIA_MOUNTED nie wpływa na aplikację Pobieranie.

Czy jest coś takiego, co mogę zrobić, aby powiedzieć aplikacji Pobrane pliki, aby odświeżyło listę w oparciu o pliki aktualnie obecne (lub nieobecne) w/sdcard/Download/ reż?

questionAnswers(1)

yourAnswerToTheQuestion