DownloadManger的使用方法:二
来源:互联网 发布:tostring方法的作用js 编辑:程序博客网 时间:2024/06/08 08:56
之前的一篇文章讲的是DownloadManger的一些基本用法和参数设置。
这篇文章稍微深入讲解一些用法。
DownloadManager.Query
顾名思义,这个类就是用来查询的。他的一个重要的参数,ID就是上一篇讲到的,downloadManager.enqueue(request);的返回值。
下面我们来看一下这个类的基本用法。
IntentFilter filter = new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE); receiver = new DownloadCompleteReceiver(); registerReceiver(receiver, filter);
class DownloadCompleteReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { long downloaded_id = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, -1); /* Log.d(getPackageName(), "下载完成:" + "downloaded_id =" + downloaded_id + "----" + "download_id=" + download_id1 + ""); Log.d(getPackageName(),"下载完成:"+"downloaded_id ="+downloaded_id+"----" +"download_id="+download_id2+""); if(download_id1 == downloaded_id){ Log.d(getPackageName(),"下载完成:"+"downloaded_id ="+downloaded_id); } if(download_id2 == downloaded_id){ Log.d(getPackageName(),"下载完成:"+"downloaded_id ="+downloaded_id); }*/ DownloadManager.Query myQuery = new DownloadManager.Query(); myQuery.setFilterById(downloaded_id); Cursor cursor = downloadManager.query(myQuery); if (cursor.moveToFirst()) { int id = cursor.getColumnIndex(DownloadManager.COLUMN_ID); int media_type = cursor.getColumnIndex(DownloadManager.COLUMN_MEDIA_TYPE); int media_provider_uri = cursor.getColumnIndex(DownloadManager.COLUMN_MEDIAPROVIDER_URI); int filename = cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_FILENAME); int total_size = cursor.getColumnIndex(DownloadManager.COLUMN_TOTAL_SIZE_BYTES); String download_id = cursor.getString(id); String file_media_type = cursor.getString(media_type); String provider_uri = cursor.getString(media_provider_uri); String name = cursor.getString(filename); String size = cursor.getString(total_size); tv_id.setText(download_id); tv_media_type.setText(file_media_type); tv_media_uri.setText(provider_uri); tv_filename.setText(name); tv_size.setText(size); } } }
上面的Receiver是监听下载完成广播的一个Receiver,下载的代码就不给出。
未完……
0 0
- DownloadManger的使用方法:二
- 指针的使用方法【二】
- Android downloadmanger 2之对于下载完成和点击下载通知的监听
- Android DownloadManger下载管理
- SAX的使用方法简介(二)
- jackson的使用方法(二)
- Spark的使用方法(二)
- eclipse +cvs 的基本使用方法(二)
- VC中#Pragma的使用方法(二)
- c++模版的一些使用方法(二)
- GIS开源库shapeLib的使用方法(二)
- java多线程组件二:DelayQueue的使用方法
- RabbitMQ 基于python的使用方法(二)
- IO流的概念及使用方法二
- VisualSVN Server的配置和使用方法(二)
- XUtils3框架的基本使用方法(二)
- XUtils3框架的基本使用方法(二)
- string类成员函数的使用方法(二)
- HDU ACM 3790 最短路径问题
- 牌 九 最 新 高 科 技 的 监 控【加威-信13535353835】牌 九 最 新 高 科 技 的 监 控
- 黑马程序员——多态,内部类
- 要 几 打 几 的 色 子【加威-信13535353835】要 几 打 几 的 色 子
- 第十三周 程序阅读一
- DownloadManger的使用方法:二
- 色 子 的 遥 控【加威-信13535353835】色 子 的 遥 控
- 在xcode6 上创建Empty Application工程
- 扑 克 分 析 仪 软 件【加威-信13535353835】扑 克 分 析 仪 软 件
- 福 建 十 三 水 怎 么 玩【加威-信13535353835】福 建 十 三 水 怎 么 玩
- 一个CSS3滤镜Drop-shadow阴影效果
- Alamofire网络库进阶教程
- ajax之 表单序列化后提交
- 第十三周阅读程序1