摘要 | 第4-5页 |
Abstract | 第5页 |
1 绪论 | 第9-13页 |
1.1 项目背景 | 第9-10页 |
1.2 项目内容和意义 | 第10-11页 |
1.2.1 项目内容 | 第10页 |
1.2.2 项目意义 | 第10-11页 |
1.3 该类软件的现状 | 第11-12页 |
1.4 本文工作 | 第12页 |
1.5 章节安排 | 第12-13页 |
2 关键技术分析以及研究 | 第13-25页 |
2.1 Android系统架构 | 第13-15页 |
2.1.1 应用程序层 | 第14页 |
2.1.2 应用程序框架层 | 第14页 |
2.1.3 系统运行库层 | 第14-15页 |
2.1.4 Linux内核层 | 第15页 |
2.2 HTTP协议及多线程下载 | 第15-17页 |
2.2.1 HTTP请求工作原理 | 第15-16页 |
2.2.2 HTTP多线程下载技术原理 | 第16页 |
2.2.3 HTTP下载断点续传技术原理 | 第16-17页 |
2.3 Android平台支持的视频传输协议 | 第17-21页 |
2.3.1 HTTP渐进式下载 | 第17页 |
2.3.2 HTTP Live Streaming协议 | 第17-21页 |
2.4 基于HTML DOM解析的视频嗅探技术 | 第21-23页 |
2.5 基于MIME和特征签名过滤的视频嗅探技术 | 第23-24页 |
2.6 SQLite嵌入式数据库 | 第24页 |
2.7 Vitamio框架 | 第24-25页 |
3 需求分析与总体设计 | 第25-38页 |
3.1 需求分析 | 第25-27页 |
3.1.1 项目概述 | 第25页 |
3.1.2 功能需求 | 第25-27页 |
3.1.3 性能需求 | 第27页 |
3.1.4 可靠性需求 | 第27页 |
3.1.5 接口需求 | 第27页 |
3.2 系统结构设计 | 第27-28页 |
3.3 功能模块划分 | 第28-33页 |
3.3.1 浏览器模块 | 第30页 |
3.3.2 视频地址嗅探模块 | 第30-31页 |
3.3.3 下载模块 | 第31-32页 |
3.3.4 视频预览与播放模块 | 第32-33页 |
3.4 UI设计 | 第33-34页 |
3.5 数据库设计 | 第34-38页 |
4 详细设计与实现 | 第38-61页 |
4.1 浏览器模块 | 第38-41页 |
4.1.1 网页显示 | 第38-40页 |
4.1.2 网页控制 | 第40页 |
4.1.3 书签添加与访问 | 第40页 |
4.1.4 屏幕适配 | 第40-41页 |
4.2 视频地址嗅探模块 | 第41-50页 |
4.2.1 基于JavaScript解析DOM嗅探 | 第41-44页 |
4.2.2 基于MIME与特征签名过滤嗅探 | 第44-50页 |
4.2.3 小结 | 第50页 |
4.3 下载模块 | 第50-58页 |
4.3.1 下载任务管理 | 第50-52页 |
4.3.2 HTTP协议视频下载 | 第52-54页 |
4.3.3 HLS协议视频下载 | 第54-57页 |
4.3.4 下载任务信息显示 | 第57页 |
4.3.5 保持后台下载阻止系统休眠 | 第57-58页 |
4.4 视频预览与播放模块 | 第58-61页 |
4.4.1 异步加载缩略图 | 第58-59页 |
4.4.2 使用Vitamio播放视频 | 第59-61页 |
5 软件测试 | 第61-68页 |
5.1 测试环境 | 第61-62页 |
5.2 界面适配测试 | 第62-63页 |
5.3 功能测试 | 第63-67页 |
5.4 健壮性测试 | 第67-68页 |
结论 | 第68-70页 |
参考文献 | 第70-72页 |
致谢 | 第72-73页 |