Удалить загруженный файл Android - PullRequest
0 голосов
/ 04 мая 2019

Итак, я использовал DownloadManager для загрузки файла из Интернета, используя следующий код:

public void DownloadFile()
    {
        Log.d("DownloadFileEntered", "true");

        try {
            String url = "https://firebasestorage.googleapis.com/v0/b/roti-bank-testing.appspot.com/o/SocialGallery%2Fsome.jpg?alt=media&token=d2ddd40f-0c04-441c-82b1-585fd8743b19";
            DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
            request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "somegif.gif");
            DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
            long d = manager.enqueue(request);


        }catch (Exception e)
        {
            Log.d("DownloadFileEntered", "Error."+e.toString());
        }
    }

Теперь, скажем, я хочу удалить этот файл.Чтобы сделать это, я использовал следующий код:

    File file = new File("file://" + Environment.DIRECTORY_DOWNLOADS + "/somegif.gif");
    boolean d = file.delete();
    Log.d("DownloadFileEntered", "D : "+d);

Но, очевидно, последний Log.d выдает вывод как false, и файл также не удаляется.Итак, как правильно удалить файл из внешнего хранилища?

Кроме того, можем ли мы запустить функцию после завершения загрузки?если да то как?

1 Ответ

0 голосов
/ 04 мая 2019

Надеюсь, это поможет вам:

File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + "/somegif.gif");
    boolean d = file.delete();
    Log.d("DownloadFileEntered", "D : "+d);

И не забудьте установить это разрешение в файле manifest.xml:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...