Android 系统清理程序残留文件方法的设计 与实现 续磊,邹仕洪** 作者简介:续磊,(1988-),男,硕士研究生,移动信息安全。 通信联系人:邹仕洪,(1978-),男,北京邮电大学网络与交换技术国家重点实验室 副教授,移动信息 安全。 E-mail: zoush@bupt.edu.cn 5 (北京邮电大学网络与交换技术国家重点实验室,北京 100876) 摘要:本文首先简单介绍了Android 系统,然后详细地介绍了该清理方法在Android 平台上 的设计与实现。该清理方法包括三个模块:用户界面,扫描引擎,更新管理模块。本文重点 讨论了这三个模块实现的关键技术,最后对该方法进行了测试。 关键词:android;清除;垃圾文件;FileOberver;Api Hook 10 中图分类号:TP311 Design and implementation of clearing android application's residual files Xu Lei, Zou Shihong 15 (State Key Laboratory of Networking and Switching, Beijing University of Posts and Telecommunications, Beijing 100876) Abstract: Firstly,this paper simply introduces the Android operating system,a detailed introduction of the design and implementation of clearing residual files on android platform.This method mainly includes three modules:user interface,scan engine,udpate manager.This paper 20 discusses the key technologies that implementing the three modules,and then testing the method functions. Keywords: android; clear; residual file; FileObserver; Api Hook 0 引言 25 2005 年,Google 收购了成立仅22 个月的Android 公司。2007 年11 月,谷歌公司正式 发布自己的智能手机操作系统:Android 系统,并且联合了多家厂商,联手开发和推广Android 系统。由此Android 系统开始了飞速发展。 2011 年第一季度,Android 在全球的市场份额 首次超过塞班系统,跃居全球第一。 2012 年7 月数据,Android 占据全球智能手机操作系 统市场59%的份额,中国市场占有率为76.7%[1]。 30 随着Android 高速发展,Android 用户也越来越多。Android 手机上有用户日常所需的许 多应用程序,包括游戏、聊天软件或杀毒软件等,由于用户在不同时期有不同需求,对许多 应用进行过安装或卸载,被卸载的应用程序对应生成的文件依然保存在手机上,形成垃圾文 件占用手机存储空间。大量无用的文件杂在有用文件之中占用移动终端的存储空间,久而久 之,移动终端运行速度减慢,影响用户对其它有用文件的正常使用。虽然移动终端的存储空 35 间可以进行扩展,但这种扩展毕竟是有限的。用户需要及时清理垃圾文件,使手机运行更敏 捷快速,方便使用。 经过调研,发现市场上的一些垃圾文件清理软件都是清理应用程序产生的缓存,临时文 件等,从来没有清理应用程序产生的残留文件。所以如何及时进行清理Android 系统中的应 用程序残留垃圾文件,就成为了一个亟需解决的问题。本文主要阐述了一种实现清理应用程 40 序残留文件的方法。 1 Android 系统架构简介 如图1 所示,它展示了Android 系统的主要组成部分[2]: 图1 Android 系统架构图 45 从上图中可以看出,Android 系统架构为四层结构,从上层到下层分别是应用程序层、 应用程序框架层、系统运行库层以及Linux 内核层。 1.1 应用程序层(Applications) Android 平台不仅仅是操作系统,也包含了许多应用程序,诸如SMS 短信客户端程序、 50 电话拨号程序、图片浏览器、Web 浏览器等应用程序。这些应用程序都是 用Java 语言编写 的,并且这些应用程序都是可以被开发人员开发的其他应用程序所替换,这点不同于其他手 机操作系统固化在系统内部的系统软件,更加灵活和个性化[3]。 1.2 应用程序框架层(Application Framework) 应用程序框架层是从事Android 开发的基础,很多核心应用程序也是通过这一层来实现 55 其核心功能的,该层简化了组件的重用,开发人员可以直接使用其提供的组件来进行快速的 应用程序开发,也可以通过继承而实现个性化的拓展。 1.3 系统运行库层(Libraries) Android 包含一个C/C++库的集合,供Android 系统的各个组件使用。这些功能通过 Android 的应用程序框架(application framework)暴露给开发者。如系统C 库,媒体库,3D 60 库等。 1.4 Linux 内核层(Linux Kernel) Android 基于Linux 2.6 提供核心系统服务,例如:安全、内存管理、进程管理、网络堆 栈、驱动模型。Linux Kernel 也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上 层提供统一的服务。 65 2 清除程序残留文件软件的设计 要清除这些残留垃圾文件,其实就是要找到每个文件对应的应用程序,查看该应用程序 是否被卸载,如果该应用程序已经被卸载,则该文件为残留垃圾文件,然后建议用户删除。 2.1 概要设计 根据功能需求的分析,本文提出了该方法的体系架构。如图2 所示: 70 图2 清除程序残留文件方法的系统架构图 该清除残留文件方法主要分为以下四个模块来实现。 学术论文网Tag:代写硕士论文 代写论文 代写代发论文 代发论文 |