安卓系统:无法将使用下载管理器从服务器下载的数据保存到内部内存



我正在使用android中的DownloadManager类从服务器下载数据。数据保存到外部存储器。但我想把它们保存到内部记忆中。我做了我的研究,我发现的就是这个环节。我尝试了cyngus的第二种解决方案:

public static final String PROVIDER_NAME = "com.provider.Downloads";
public static final Uri CONTENT_URI = Uri.parse("content://"+ PROVIDER_NAME + "/downloads")
DownloadManager.Request req = new DownloadManager.Request(Uri.parse(LINK));
req.setDestinationUri(CONTENT_URI);

它不起作用,它给了我一个错误:java.lang.IllegalArgumentException: Not a file URI: content://com.provider.Downloads/downloads。我做错了什么?

DownloadManager.Request的文档明确提到,您为任何setDestination*方法设置的目标必须在外部存储上,并且您的应用程序必须具有WRITE_EXTERNAL_STORAGE权限:

为下载的文件设置本地目标。必须是外部存储上路径的文件URI,并且调用应用程序必须具有WRITE_EEXTERNAL_storage权限。

我不知道怎么可能在这里提供内部存储的路径。

相关内容

  • 没有找到相关文章

最新更新