Android 移动应用开发:基于服务的下载功能实现
Android 移动应用开发:基于服务的下载功能实现
一、 实验题目:基于服务的真实下载功能实现
二、 实验内容:
结合前台活动和后台服务,加之Android运行时权限、通知、网络编程、多线程编程等技术,实现完整版的下载功能。具体包含:网络连接,数据下载,实时下载进度显示,包含对应的暂停、继续、取消、下载成功和下载失败等各种情况的监听和处理。
- 创建活动:包含下载链接提示框和输入框,以及下载、暂停和取消等功能按钮,用于对下载操作的控制。
- 创建服务:用于将下载操作的后台运行,从而不影响前台的运行效率。
- 实现Binder类:用于前台活动和后台服务的通讯。
- 创建通知:用于显示下载的实时进度以及其他各种情况。
- 实现AsyncTask类:用于将下载任务放在子线程中进行,从而提高系统运行效率。
- 建立通知与AsyncTask实现类的连接:用于将AsyncTask类子线程中的下载进度情况在通知中实时显示。
- 存储卡存储权限的申请、注册与监听。
三、 实验要求
- 主页面包含三个按钮:开始下载、暂停下载、取消下载。
- 点击'开始下载',执行下载任务(可以是任一内容),同时'开始下载'按钮变为不可用状态。
- 直接点击'暂停下载',提示'请先开始下载!';点击'开始下载'后,点击'暂停下载',该按钮背景颜色变色并且文字内容变成'继续下载',同时下载任务暂停;点击'继续下载'按钮,该按钮变回初始颜色并且文字变为'暂停下载',同时下载任务继续执行。
- 点击'取消下载',删除下载任务,同时'开始下载'按钮变为可用状态。
四、 主要知识单元:活动+通知+网络编程+多线程+服务
详细知识内容:
- 活动的创建、注册、切换
- 控件和布局的定义、实现
- 活动与布局的连接,和对控件的监听
- Android通知功能的实现与更新
- 运行时权限的注册与监听
- Android网络编程、数据传输、数据解析
- Android多线程类AsyncTask类的实现
- 服务的定义、实现、注册
- 活动与服务的通讯,Binder类的继承与派生
- 存储卡存储权限的申请、注册与监听
原文地址: https://www.cveoy.top/t/topic/Mi0 著作权归作者所有。请勿转载和采集!