使用DownloadManager实现文件下载
来源:互联网 发布:python web接口开发 编辑:程序博客网 时间:2024/05/12 06:18
创建一个新工程LearnDownLoad
在androidManifest.xml文件中添加网络访问权限和sd读写权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.INTERNET" />
activity_main.xml仅放一个按钮
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="使用下载管理器下载" android:id="@+id/btnDownloadMG" android:onClick="downloadByManager" android:layout_centerHorizontal="true" android:layout_marginTop="68dp" />
MainActivity.java代码
package com.czg.com.learndownload; import android.app.DownloadManager; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.AsyncTask; import android.os.Environment; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.webkit.MimeTypeMap; import android.webkit.URLUtil; import android.widget.Button; import android.widget.Toast; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; public class MainActivity extends AppCompatActivity { String myHTTPUrl="http://192.168.1.104:81/userPhp/music/backstreeboy.mp3"; //String myHTTPUrl="http://192.168.1.104:81/userPhp/download/1234.png"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } //通过系统下载管理器下载 public void downloadByManager(View view) { DownloadManager.Request request=new DownloadManager.Request(Uri.parse(myHTTPUrl)); request.setTitle("下载文件."); request.setDescription("文件下载中..."); //request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI); request.allowScanningByMediaScanner(); request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_ONLY_COMPLETION); String nameOfFile=URLUtil.guessFileName(myHTTPUrl,null, MimeTypeMap.getFileExtensionFromUrl(myHTTPUrl)); request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS,nameOfFile); DownloadManager manager= (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE); manager.enqueue(request); } }
源码下载地址:https://yunpan.cn/crx5tevgZtTcz 访问密码 6bbf
0 0
- 使用DownloadManager实现文件下载
- Android使用DownloadManager实现文件下载
- DownloadManager实现文件下载
- 使用DownloadManager进行文件下载
- 文件下载之使用DownloadManager
- Android使用DownloadManager下载文件
- 使用DownloadManager实现下载功能
- 使用DownloadManager实现下载更新
- Android 中 DownLoadManager 实现文件下载
- Android 中 DownLoadManager 实现文件下载
- 使用Android自带DownloadManager下载文件
- android开发(23)使用DownloadManager下载文件
- 使用Android自带DownloadManager下载文件
- 使用Android自带DownloadManager下载文件
- 使用Android自带DownloadManager下载文件
- 使用Android自带DownloadManager下载文件
- android开发(23)使用DownloadManager下载文件
- 使用 DownloadManager 实现完全在后台下载
- 1023. Have Fun with Numbers (20)
- leetcode--Pow(x,n)
- 单例模式可能带来的内存泄漏
- 69. Merge Sorted Array
- Android Handler 内存泄露
- 使用DownloadManager实现文件下载
- 用VLFeat库进行SIFT特征提取(C++ 实现)
- 软件开发工程师工作总结(转) (2010-12-25 11:51:24)
- error LNK2005: 已经在*.obj中定义
- NYOJ:题目40 公约数和公倍数
- Unity3D-NGUI动态加载图片
- Arduino入门(一)
- 在代码中修改Shape的solid属性的color值
- 给phper工作1-2年的看的