java .lang.SecurityException: неподдерживаемый путь / путь / JPEG_5e3bbe8ed6c75_24741_.jpg - PullRequest
1 голос
/ 06 февраля 2020

Это не работает на некоторых устройствах. В устройстве Samsung они не позволяют загружать файлы с помощью диспетчера загрузки. Я уже определил разрешение в манифесте, а также получил разрешение RunTime.

DownloadManager downloadManager = (DownloadManager) getActivity().getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Request request = new DownloadManager.Request(uri);
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
request.setTitle("");
request.setDescription("");
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
request.setDestinationUri(Uri.fromFile(imageFile));
request.setMimeType("*/*");
downloadManager.enqueue(request);

1 Ответ

1 голос
/ 06 февраля 2020

Я предполагаю, что проблема с разрешением времени выполнения , если вы запускаете менеджер загрузок на Marshamellow +, поэтому вам следует запросить разрешение времени выполнения, поэтому недостаточно добавить разрешение в файл манифеста. Проверьте разрешение времени выполнения из официальной документации , это поможет вам решить проблему.

Примечание: мы должны запросить разрешение на хранение, так как оно считается опасным. с другой стороны, нам не нужно запрашивать разрешение Inte rnet, потому что оно нормальное. Надеюсь, этого достаточно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...