Android热更新管理系统的研究与设计
摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
缩略语对照表 | 第10-14页 |
第一章 绪论 | 第14-20页 |
1.1 研究背景 | 第14-16页 |
1.1.1 传统应用更新方式 | 第14-15页 |
1.1.2 热更新概念及优势 | 第15-16页 |
1.2 研究现状与发展趋势 | 第16-17页 |
1.3 论文主要工作 | 第17-18页 |
1.4 论文组织结构 | 第18-20页 |
第二章 Android系统相关理论和技术 | 第20-30页 |
2.1 Android系统概述 | 第20-23页 |
2.1.1 Android系统体系架构 | 第20-22页 |
2.1.2 Android应用的组成结构 | 第22-23页 |
2.2 Android平台运行机制 | 第23-27页 |
2.2.1 Android应用的打包过程 | 第23-25页 |
2.2.2 Android应用安装过程 | 第25页 |
2.2.3 Android平台类加载机制 | 第25-27页 |
2.3 JNI相关技术 | 第27-30页 |
2.3.1 JNI概述 | 第27-28页 |
2.3.2 JNI注册方式 | 第28-30页 |
第三章 热更新技术方案 | 第30-44页 |
3.1 热更新方案总览 | 第30-31页 |
3.1.1 热更新中的动态替换流程 | 第30-31页 |
3.1.2 动态替换方案整体思路 | 第31页 |
3.2 Java方法替换方案 | 第31-36页 |
3.2.1 Java方法字节码结构 | 第31-33页 |
3.2.2 方法调用流程 | 第33-35页 |
3.2.3 方法调用替换策略 | 第35-36页 |
3.3 动态链接库替换方案 | 第36-37页 |
3.3.1 动态链接库加载原理 | 第36-37页 |
3.3.2 动态链接库替换策略 | 第37页 |
3.4 资源替换方案 | 第37-39页 |
3.4.1 资源加载过程 | 第37-38页 |
3.4.2 资源替换策略 | 第38-39页 |
3.5 新业务加载方案 | 第39-42页 |
3.5.1 Activity加载过程 | 第39-42页 |
3.5.2 外部Activity加载策略 | 第42页 |
3.6 本章小结 | 第42-44页 |
第四章 热更新系统设计与实现 | 第44-70页 |
4.1 需求分析 | 第44-45页 |
4.1.1 应用场景描述 | 第44页 |
4.1.2 功能要求 | 第44-45页 |
4.1.3 性能要求 | 第45页 |
4.2 系统整体架构设计 | 第45-46页 |
4.3 服务端设计与实现 | 第46-50页 |
4.3.1 补丁的制作 | 第46-49页 |
4.3.2 安全传输策略 | 第49-50页 |
4.4 客户端与服务端的交互协议 | 第50-53页 |
4.5 Java方法更新实现方案 | 第53-58页 |
4.5.1 标记需要更新的方法 | 第53-54页 |
4.5.2 加载dex文件 | 第54-57页 |
4.5.3 替换需要更新的方法 | 第57-58页 |
4.6 动态链接库更新实现方案 | 第58-61页 |
4.6.1 native方法注册流程 | 第58-60页 |
4.6.2 插入新的动态链接库 | 第60-61页 |
4.7 应用资源更新实现方案 | 第61-65页 |
4.7.1 资源加载模块 | 第61-62页 |
4.7.2 自定义资源加载器 | 第62-63页 |
4.7.3 替换资源具体实现 | 第63-65页 |
4.8 新页面加载实现方案 | 第65-69页 |
4.8.1 拦截Intent传送过程 | 第66-68页 |
4.8.2 拦截Intent回传过程 | 第68-69页 |
4.9 本章小结 | 第69-70页 |
第五章 热更新系统测试 | 第70-76页 |
5.1 测试环境 | 第70-71页 |
5.1.1 服务端环境搭建 | 第70页 |
5.1.2 客户端环境 | 第70-71页 |
5.1.3 硬件环境 | 第71页 |
5.2 测试结果 | 第71-75页 |
5.2.1 功能测试结果 | 第71-74页 |
5.2.2 性能测试结果 | 第74-75页 |
5.3 本章小结 | 第75-76页 |
第六章 总结和展望 | 第76-78页 |
6.1 总结 | 第76页 |
6.2 展望 | 第76-78页 |
参考文献 | 第78-80页 |
致谢 | 第80-82页 |
作者简介 | 第82-83页 |