论文标题

自动蒸馏出具有丰富功能的Android应用程序的故事板

Automatically Distilling Storyboard with Rich Features for Android Apps

论文作者

Chen, Sen, Fan, Lingling, Chen, Chunyang, Liu, Yang

论文摘要

在开发新的移动应用程序之前,开发团队通常会努力努力以相似的目的来审查许多现有的应用程序。在降低市场风险并为应用程序开发提供灵感的意义上,审查过程至关重要。但是,通过不同角色(例如产品经理,UI/UX设计师,开发人员和测试人员)对数百个现有应用程序进行手动探索可能是无效的。 在电影制作中的情节板概念之后,我们提出了一个名为StoryDistiller的系统,以通过反向工程自动为具有丰富功能的Android应用程序生成故事板,并协助不同的角色有效,有效地审查和分析应用程序。具体而言,我们(1)提出了一种混合方法来提取相对完整的活动过渡图(ATG),也就是说,它首先通过静态分析方法提取Android应用程序的ATG,然后进一步利用动态组件探索以增强ATG; (2)通过利用静态数据流分析来利用静态数据流量分析并通过使用App Instrumentation与提取的所需ICC数据一起动态地提取每个目标活动的所需的组件通信(ICC)数据; (3)获得丰富的功能,包括带有UI页面的综合ATG,语义活动名称,相应的逻辑和布局代码等。(4)将故事板可视化作为带有UI页面的Web服务实现,并具有呈现的UI页面以及相应的丰富功能。我们的实验揭示了StoryDistiller有效的,并且确实有助于帮助应用程序探索和审查。我们还进行了一项全面的比较研究,以证明与IC3,Gator,Stoat和StoryDroid相比的性能更好。

Before developing a new mobile app, the development team usually endeavors painstaking efforts to review many existing apps with similar purposes. The review process is crucial in the sense that it reduces market risks and provides inspirations for app development. However, manual exploration of hundreds of existing apps by different roles (e.g., product manager, UI/UX designer, developer, and tester) can be ineffective. Following the conception of storyboard in movie production, we propose a system, named StoryDistiller, to automatically generate the storyboards for Android apps with rich features through reverse engineering, and assist different roles to review and analyze apps effectively and efficiently. Specifically, we (1) propose a hybrid method to extract a relatively complete Activity transition graph (ATG), that is, it first extracts the ATG of Android apps through static analysis method first, and further leverages dynamic component exploration to augment ATG; (2) extract the required inter-component communication (ICC) data of each target Activity by leveraging static data-flow analysis and renders UI pages dynamically by using app instrumentation together with the extracted required ICC data; (3) obtain rich features including comprehensive ATG with rendered UI pages, semantic activity names, corresponding logic and layout code, etc. (4) implement the storyboard visualization as a web service with the rendered UI pages and the corresponding rich features. Our experiments unveil that StoryDistiller is effective and indeed useful to assist app exploration and review. We also conduct a comprehensive comparison study to demonstrate better performance over IC3, Gator, Stoat, and StoryDroid.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源