首页 > 解决方案 > 下载管理器在 Android 9.0 NetworkSecurityConfig 上返回不成功下载:未指定网络安全配置,使用平台默认值

问题描述

我正在使用下载管理器从 Internet 下载文件。下载在 Android 6、8.1 中成功完成,但在 Android 9.0 中没有

DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.setDescription("Downloading...");
request.setTitle(nameOfFile);
request.setMimeType("application/pdf");
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS + "/CPG", nameOfFile);
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
queueId = manager.enqueue(request);

标签: androidnetworkingandroid-download-managerandroid-9.0-pie

解决方案


这个标签对我有用

 android:usesCleartextTraffic="true"

将此标签添加到应用程序

 <application
        android:name=".ApplicationClass"
        android:allowBackup="true"
        android:hardwareAccelerated="false"
        android:usesCleartextTraffic="true"

解决方案2)

创建一个 XMLres/xml/network_security_config.xml

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true" />
</network-security-config>

在你的标签 Application 里面AndroidManifest.xml

android:networkSecurityConfig="@xml/network_security_config"

下载 Manger 在 Android Pie 9.0 (Xiaomi mi A2) 中不工作


推荐阅读