0

我正在尝试通过 Ip+port 将文件从一部 Android 手机下载到另一部。如果我在手机的网络浏览器中写入网址,我可以成功地从其他手机下载文件。网址是这样的

      http://172.20.99.238:9999/file/3/001_01.mp3

但我无法通过代码下载此文件

                    String downLoadLink = "http:/"+url+":9999/file/"+fileID+"/"+fileName;
            //downLoadLink = downLoadLink.replace(" ", "");
            Intent downloadIntent = new Intent(Intent.ACTION_VIEW);
            downloadIntent.setData(Uri.parse(downLoadLink));
            startActivity(downloadIntent);

此问题的任何解决方案

4

2 回答 2

4

如果您的目标至少是 API 级别 9,您应该使用 DownloadManager。我一直在玩它并且工作得非常好,避免启动浏览器并处理你需要的一切。我将提供以下链接,而不是复制粘贴代码:

http://www.vogella.com/blog/2011/06/14/android-downloadmanager-example/

尝试仅使用 onClick 方法进行测试。其余代码仅用于获取文件的 URI。

于 2012-10-24T09:06:23.480 回答
1

只需在清单中使用此代码并获得 Internet 权限

        String servicestring = Context.DOWNLOAD_SERVICE;
        DownloadManager downloadmanager;
        downloadmanager = (DownloadManager) getSystemService(servicestring);
        Uri uri = Uri
                .parse("your link to file");
        DownloadManager.Request request = new DownloadManager.Request(uri);
        Long reference = downloadmanager.enqueue(request);
于 2016-03-15T16:57:20.213 回答