3

我正在使用 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。我做错了什么?

4

1 回答 1

6

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

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

我看不出如何在这里提供内部存储的路径。

于 2012-07-12T09:06:08.500 回答