Проблема с разрешениями при загрузке файла с FTP

Когда я скачиваю файл с ftp-сервера, я получаю FileNotFoundExeption с разрешением DENIED. Я добавил пользовательские разрешения в манифест:

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

, а также добавил в application:

android:requestLegacyExternalStorage="true"

Перед загрузкой я запрашиваю разрешение:

ActivityCompat.requestPermissions((Activity)this.context, newString[{ Manifest.permission.WRITE_EXTERNAL_STORAGE }, 1);

setOnClick установлен в recyclerview, прилагаю код загрузки, помогите, мучаюсь уже пару дней:

public void downloadFile() {
        FTPClient client = new FTPClient();
        OutputStream fos;
        ActivityCompat.requestPermissions((Activity)this.context, new String[]{ Manifest.permission.WRITE_EXTERNAL_STORAGE }, 1);
        File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), this.filename);
        try {
            fos = new FileOutputStream(file);
            client.connect("backup-storage5.hostiman.ru");
            client.enterLocalPassiveMode();
            client.login("**********", "********");
            client.retrieveFile("/" + this.filename, fos);
            client.logout();
            client.disconnect();
            System.out.println("ALL DONE!");
        } catch (IOException e) {
            System.out.println("FAILED TO DOWNLOAD FILE FROM SERVER!\n" + e);
        }
    }

Ответы (0 шт):