毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

AndroidApp的活动事件图生成(4)

时间:2021-11-13 21:07来源:毕业论文
1。3 研究内容 基于上述研究背景与意义,本文将从活动及活动跳转关系的角度展开研究,提出了 Android App 的活动事件图(Activity Event Graph,简称 AEG)自动

1。3 研究内容

基于上述研究背景与意义,本文将从活动及活动跳转关系的角度展开研究,提出了 Android App 的活动事件图(Activity Event Graph,简称 AEG)自动化生成方法。活动事件图 的定义是指给定一个 App,通过静态分析的方式获得该 App 中所有的活动及活动间的跳转事 件,并生成可视化的图形,其中图中的节点表示 App 中的活动,图中的边表示两者之间活动 的跳转事件。在活动事件图中,能够直观的展示一个 Android App 中所有的活动,以及活动 与活动之间是通过哪些事件进行界面转换的。

在 Android App 中,活动是指一个可供用户进行操作的界面。在该界面下,用户可以进 行拨打电话,发送断行,拍照,发邮件等操作。一个 Android App 通常由多个活动组成,并 有一个主活动做为应用的初始启动界面。事件则是指活动与活动之间进行交互的一种方式。 本文希望通过静态分析 Android App 的方式来生成该 Android App 对应的活动事件流图 AEG。

本文的主要研究内容如下:

1。 针对任意输入的 Android App 的 apk 文件,分析其清单文件 AndroidManifest。xml,获 得程序中的所有 Activity 节点以及该 Activity 节点全部的 intent-filter 配置。

2。 利用 soot[13]工具,对程序中 src 文件中的 java 类文件进行分析,获得程序中所有的 startActivity()/startActivityForResult() Activity 启动语句,即活动跳转语句,这些语句负责执行 Activity 之间的跳转。接着对活动跳转语句中的 Intent 参数进行分析,获取封装在 Intent 中的 活动跳转的目标 Activity。活动跳转语句所在的方法即为活动触发事件的边的值。

3。 将通过上述两项得到的所有节点与边的值,利用 GraphViz 工具画出 Android App 的活 动事件图。

1。4 组织结构

本文的结构安排如下:

第一章进行论文介绍,分别介绍了论文的研究背景与意义、国内外研究现状以及本文 的研究内容。

第 6  页 本科毕业设计说明书

第二章介绍了本文的背景技术与相关工作,首先介绍了 Android 的相关知识,包括 Android 四大基本组件、清单文件、活动栈、Intent 与 Intent-Filter 匹配机制,然后介 绍了相关工作,包括 soot 工具、程序静态分析与程序动态分析。

第三章介绍了 AEG 自动生成方法,分三部分讲述,首先为 Android App 清单文件分 析,然后为活动跳转事件分析,最后为 AEG 图形生成。

第四章介绍了原型工具 AEGAutoWork 的实现,先介绍了原型工具的开发环境,然后 分模块介绍了 AEGAutoWork 的实现过程,模块化设计过程与第三章的分步讨论过程 是一致。

第五章第原型工具 AEGAutoWork 进行了实验与评估,说明了方法的有效性。

第六章为本文的总结与展望。

2 背景技术与相关工作

本科毕业设计说明书 第 7 页

智能移动终端的迅速发展,使得 Android 系统得到了很大的应用,同时各种 Android 应用 程序如雨后春笋般爆发。面对众多的 Android 应用程序,如何能够对其进行高效的测试,我 们首先需要了解一个 App 的事件处理过程,也就是就需要构建一幅活动事件图。本文主要介 绍 Android 基础知识和活动事件图构建的相关工作。

2。1 Android

本节主要介绍 Android 的基础知识,首先介绍 Android 的四大基本组件;然后介绍 Android 应用程序的清单文件 AndroidManifest。xml;之后介绍 Android 活动栈;最后介绍组件之间进 行通信的接口 Intent,Intent-Filter 以及它们之间的匹配机制。 AndroidApp的活动事件图生成(4):http://www.youerw.com/jisuanji/lunwen_84890.html

------分隔线----------------------------
推荐内容