sdk测试工具(app sdk测试)

sdk测试工具(app sdk测试)在开发过程中 您通常会遇到技术选择的问题 我应该使用哪些第三方 SDK 来实现我想要的功能 我们在开发 APP 的时候 肯定要选择一些成熟的 SDK 不会在上的 Demo 中找到代码来使用 这样可能会造成很多 bug 现在有这样一款工具 可以让你查看主流 APP 使用的 SDK 相信大型厂商使用的 SDK 都经过了严格的验证 比较放心 前段时间 我们准备做一些事情来分析同行应用对第三方 SDK 的使用情况

大家好,我是讯享网,很高兴认识大家。



在开发过程中,您通常会遇到技术选择的问题:我应该使用哪些第三方 SDK 来实现我想要的功能?我们在开发APP的时候,肯定要选择一些成熟的SDK,不会在上的Demo中找到代码来使用,这样可能会造成很多bug。现在有这样一款工具,可以让你查看主流APP使用的SDK,相信大型厂商使用的SDK都经过了严格的验证,比较放心。

前段时间,我们准备做一些事情来分析同行应用对第三方SDK的使用情况,我们开始考虑下载一些同行业的主流应用,然后反编译,然后逐一检查哪些SDK被使用。想想手动下载、反编译 APK 和逐个检查 SDK 使用情况的麻烦。如果我喜欢“懒惰”,我想知道我是否可以制作一个自动化工具来自动完成这些任务,或者大部分工作都是通过编程自动化完成的?如果用的是自动化程序,不需要局限于几个对等APP的,可以自动收集应用市场,或者APP,只要编写了自动化工具,以后收集多少APP都无关紧要,工作量也不会增加太多,于是就开始按照这个想法折腾了。

1. 准备工作

由于我熟悉 JAVA 作为后端技术,所以我用 JAVA 编写了这个程序。在编写工具之前,您需要准备以下工具:

二、设计思路

下面只介绍这个工具的设计思路,没有具体的代码,思路清楚之后写代码就很简单了。

1. 数据库设计

我们需要设计数据库表来收集数据,这很简单,我设计了 6 个表:

2. 获取APP安装包

各大应用市场都有 TOP xx 应用列表,这些 APP 一般都是用户使用较多的 APP,而这些 APP 使用的第三方 SDK 一般都是比较成熟的 SDK,值得我们参考。

我选择从小米应用市场下载热门应用作为数据分析样本,选择了超过1000个应用排名靠前的APK,我只选择分析应用应用,过滤掉游戏类别。

应用排行榜界面的url格式是这样的:,用来获取这些页面页面的源码,然后用解析后的网页的源码得到每个APP的详细网址地址,APP详情地址的格式是这样的:包名,然后在APP详情页解析出APK的下载地址,下载APK。除了APK的下载地址,还可以通过这个界面获取APP的其他基本信息,必要时可以保存到数据库中,我的存储在表中。

3. 反编译APK

下载APK后要做的工作是反编译APK,这里我们将使用抓取的APK。这一步其实很简单,你知道JAVA可以直接运行脚本命令,也可以反编译APK:

微信小程序游戏开发_重庆招聘小程序后台维护_怎么查看小程序后台开发文件
讯享网

Runtime.getRuntime().exec(“java -jar apktool.jar d -f ” + apkPath + “ -o ” + outPath)

这里可能会有人问,反编译一个文件有什么用?反编译后,有两部分内容对我们有用:前缀目录和.xml。可以通过.xml获取apk的基本信息,必要时可以使用XML解析工具进行解析,我使用SAX进行.xml计算并获取每个APP的进程数,广播接收机数量和权限等信息。被认为是前缀的目录是我们主要使用的数据。如你所知,每个SDK的包名基本都是唯一的,重复的很少,java文件的包名和目录名都有对应的关系,这个APK的所有包名都可以通过获取文件所在的路径来知道。这样,就可以收集APK的所有包名,并将它们存储在数据库中以备后用。这里需要注意的是,在收集包名的时候可以做一个初步的筛选,直接过滤一些无用的或APK的包名,提高采集效率,避免收集一些垃圾数据。将此信息存储在表中。

4. 连接 SDK

这一步实在是太辛苦了,是不想吐的工作,也是这个SDK的采集过程中唯一需要手动完成的事情。在上一步中,我们已经收集了所有APP使用的包名,这一步我们需要检查这些包名,如果是非第三方SDK就删除,如果是SDK就记下SDK名称和备注,以便于后续搜索。

5. 前端接口

后台已经设置好了,你可以根据需要稍微改进一下,比如我们记录了每个应用的下载地址,可以定期更新。现在我们这里要做的就是开发一个前端接口,用于可视化操作查询,这部分就没什么好说的了,直接在渲染上写接口和调整接口就行了:

搜索界面

详:

6. 其他

以上哪里写错了还是要匆忙,欢迎您的意见,谢谢!

SDK查询地址:

数据下载地址:数据源

小讯
上一篇 2025-04-20 19:39
下一篇 2025-04-27 14:16

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/165116.html