Android应用第三方库的检测系统的设计与实现

被引量 : 1次 | 上传用户:gy19910192
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着Android应用覆盖到了用户生活的方方面面,移动应用的开发者需要在开发的应用中嵌入各种各样的第三方库,以用来在应用中实现各种不同的功能,如社交、支付、导航等。第三方库的广泛使用给应用的开发者带来了便利,大大缩短了应用的开发周期。但同时,由于嵌入第三方库会给应用中引入第三方库的代码,会给应用带来一些安全性的风险。现阶段的关于应用中含有的第三方库的检测方法主要分为基于白名单的方式和基于机器学习的方式。在基于机器学习的方法中又根据在统计特征时是否包含有数据类型标签,分为有监督学习的分类和无监督学习的聚类两种。因为目前市场上第三方库的数量的快速增长,基于白名单的方式无法做到白名单的及时更新。又因为市场上的第三方库种类多,很多第三方库都没有可以用于区分的特征,基于分类的方式也无法满足需求。基于聚类的方式便成为了一种可行的解决方案,但是在聚类结果的精准度上还有很大的提升空间。本文针对于聚类结果的精准度问题,做了如下的工作:1、针对于聚类时需要提取的应用特征,从源码上对应用进行分析,探索提取的特征信息与聚类结果精准度上的联系。2、本文从子包之间的联系出发,提出模块的概念,将联系紧密的子包划分到同一个模块。同时也提出了模块分解的概念,将整个应用中的所有子包,根据子包之间功能性上的继承关系、接口调用关系、函数调用关系、成员变量关系进行模块划分,将联系紧密的子包划分到同一个模块中。最终得到应用的子包依赖分布图。3、本文将模块分解以及聚类识别结合在一起,完成整个系统的搭建。并且在Google Play上下载了 183089个应用作为基础以进行比对实验。通过将本文的系统得到的实验结果,跟之前的研究结果进行全方面的比对,证实了本文设计的方法不仅仅能够即时的,高效的检测应用中含有的第三方库,而且具有更高的准确性。
其他文献
本文根据国家统计局2003—2012年城乡居民收入历史数据回溯调整方法,对CHIPS(2007)微观家户数据进行了调整;并使用国家统计局的基尼系数计算方法,对中国居民收入基尼系数进行
本文结合笔者所参与的甘泉宫遗址发掘工作,以及在田野考古工作中所发掘的墓葬,通过应用ArcGIS软件,总结出GIS系统在田野考古中的应用。在目前的田野考古工作中存在有一些问题
青白瓷是宋元时期闽江上游地区重要的瓷器产品之一,代表着当时该地区制瓷业的历史发展水平。本文以宋元时期闽江上游地区青白瓷及窑址作为研究对象,通过梳理该时期青白瓷窑址
清华简《系年》首章记载商纣王“不恭上帝”的史实。殷商晚期普遍存在淡化祭祀的现象,商纣王肯定会受到当时社会环境的影响。商人重视祭祀祖先神、自然神,周人重视祭祀上帝天
科幻小说作为一种起源自西方国家的文学体裁,在西方世界有着了良好的发展,并且拥有一众忠实的“科幻迷”。因此,非英语国家的科幻作品想要打入西方市场绝非易事。刘慈欣的小
笔者对宋代福建女性墓志铭有着浓厚的兴趣,致力于通过分散于八闽各地的女性墓志铭揭开宋代福建女性生活的面纱。本文通过对宋代福建女性墓志铭中所体现出的婚姻观、生育观、
北魏时期佛教造像活动兴盛,女性也参与其中。北魏佛教造像记中有大量的女性功德主,是研究女性信仰的一手材料。本文试图全面搜集北魏时期的女性造像记,在辨别性别身份时,借助
构建现代农业经营体系是深入推进农业供给侧结构性改革、加快培育农业农村发展新动能、发展现代农业的关键。构建现代农业经营体系是一项长期复杂的系统工程,在此过程中,必须
客户关系管理是某商业银行日常工作的重要组成部分,在单位未来深化改革过程中扮演着越来越重要的角色。客户关系管理的透明化、精细化已成为某商业银行客户管理部门的首要工