Android应用Activity启动环研究

来源 :计算机学报 | 被引量 : 0次 | 上传用户:alkjhgfdsa
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
Activity的循环启动构成了activity启动环(ALC),它是一种Android应用开发工程师为了完成特定功能而广泛使用的结构。由于缺乏对ALC特性的系统研究,致使当前activity跳转分析方法对启动方式不敏感,使其无法正确模拟使用特殊启动方式的Android应用的返回栈状态变化,从而产生非法路径。本文形式化表示了以7种不同方式启动activity带来的返回栈状态变化,并提出表示activity间启动关系的activity启动图(ALG),以及启动方式敏感的activity跳转静态分析方法用于自动构建ALG。该方法首先为Android应用构造辅助主函数:为每个activity类构造一个对象的堆内存分配点,对于每个activity对象,依据控制流组织被重写的回调函数调用顺序。然后通过面向对象的字段敏感指向分析提取activity启动关系中的目标activity类和启动方式相关配置,从而构建activity对象的启动图。另外,本文设计并实现了ALC静态分析框架ALCAnalyzer,该框架能为Android应用自动生成ALG,基于ALG生成ALC集合,并能准确模拟重复执行ALC时的返回栈状态变化,预测应用在运行过程中是否会产生同类型activity实例。对1179个Android开源应用进行自动分析及人工验证的实验结果证明了启动方式敏感的activity跳转分析的准确性和分析工具的实用性,同时展现了ALC分布的广泛性和特殊启动方式被使用的广泛性。对GooglePlay的20个应用进行实验,结果证明相比于启动方式不敏感的activity跳转分析,ALCAnalyzer能够更准确模拟返回栈状态变化,从而防止非法路径产生,并能够为返回栈管理提供有效信息。
其他文献
<正> 为了具体探索我国氏族社会和奴隶社会音乐文化发展的状况,去年三月到五月,我们四个人去甘、陕、晋、豫四省,对这两个时代的部分音乐文物进行了一次初步的调查。调查结果
猪巴氏杆菌病即猪肺疫(俗称"锁喉风"),是由多杀性巴氏杆菌特定血清型引起的一种常见的、传染性猪出血性败血病,本病多为急性、地方流行性传染病。该病病原多杀性巴氏杆菌可感
随经济全球化进程的不断推进,世界各国的各式各样的设计风格也不断的被我们认可和接受,同时认识到只有民族的才是世界的。现代景观设计中具有中式特色的设计层出不穷,新中式居住
建筑设计是建筑施工的重要组成部分,也是建筑施工的基础。建筑设计的创新对于整个建筑行业来说有着举足轻重的地位,尤其在近年来建筑行业高速发展时期。这也对建筑设计创新提
艺术设计是设计理念与文化现象的一种反映,一直以来其都是设计者追求的重点。艺术设计形式作为传达艺术设计灵魂和精神内核的载体,在艺术设计中占据重要地位,而艺术设计的传
目的探讨白芍提取物含药血清对原代培养海马神经元5-羟色胺3受体(5-HT3R)介导离子通道的影响。方法采用孤养结合慢性温和刺激法复制抑郁情绪大鼠模型,并采用旷场实验和糖水偏
ue*M#’#dkB4##8#”专利申请号:00109“7公开号:1278062申请日:00.06.23公开日:00.12.27申请人地址:(100084川C京市海淀区清华园申请人:清华大学发明人:隋森芳文摘:本发明属于生物技