统计Android apk和jar的方法数

本文介绍了如何统计Android apk和jar文件中的方法数。首先尝试使用github上的dex-method-counts工具,但遇到问题。随后,作者分享了两个自编的小脚本,jarmethod.sh用于统计jar包,apkmethod.sh用于统计apk中的java方法数。在Linux环境下运行这些脚本,需要确保dx指令的环境变量配置正确。注意,apk混淆是在生成dex包后进行的,因此65536的方法数限制针对混淆前的dex文件。
摘要由CSDN通过智能技术生成

今天遇到了统计Android apk和jar包种方法数的问题,然后搜索到了github上一个很普及的方法dex-method-counts,下载之后使用如下方法

1. 到下载后的目录, 执行  ant jar(提前配置ant环境,可移步Mac Ant安装

2. 然后就可以执行 ./dex-method-counts your_app.apk 就出来结果了。



但是想通过这个方法来统计jar包种的方法数就会报错  

Magic number is wrong -- are you sure this is a DEX file?

不知道如何解决这个问题,于是另寻它法

今天弄了两个小工具,分别用于统计jar包和apk中java方法的数量,工具名称分别为:jarmethod.sh 和 apkmethod.sh,两个工具在Linux环境下跑,分享给大家:

1、jarmethod.sh工具,用于统计jar包中的方法数,脚本内容如下,将其保存为jarmethod.sh即可:

#! /bin/sh
  
# 获得输入的jar文件
JAR_FILE=$1;
  
# 这里直接使用dx命令,是因为我已经提前配置好了环境变量,dx目录位于:
# $ANDROID_HOME/sdk/build-tools/android-4.3.1/dx
dx --dex --verbose --no-strict --output=temp.dex $JAR_FILE >  /dev/null
  
# 计算jar包中的方法数
METHOD_COUNT=` cat  temp.dex |  head 
Android apk分析器(ApkAnalyzer)是一个用于分析和查看Android应用程序(apk文件)的工具。它可以帮助开发者深入了解应用程序的内部结构和信息,以便在开发和调试过程中提供更多的支持。 ApkAnalyzer的源代码是开放的,由Android开源社区提供。它使用Java编程语言编写,使用了Android SDK中的相关类库和工具,如aapt、dex2jar等。 ApkAnalyzer的主要功能包括: 1. 分析APK文件的内容:ApkAnalyzer可以解析APK文件的目录结构和资源文件,从而了解应用程序的组织结构和内容。它可以展示应用程序的AndroidManifest.xml文件、资源文件、dex文件等。 2. 查看应用程序的权限:ApkAnalyzer可以显示应用程序在AndroidManifest.xml文件中声明的权限信息,帮助用户了解应用程序需要访问的敏感权限。 3. 显示应用程序的依赖项:ApkAnalyzer可以分析APK文件中包含的库文件和依赖项,帮助开发者了解应用程序所使用的第三方库和组件。 4. 反编译应用程序的代码:ApkAnalyzer可以将应用程序的dex文件反编译为Java源代码,使得开发者能够查看和分析应用程序的代码逻辑和实现细节。 5. 检查APK文件的大小和资源使用情况:ApkAnalyzer可以统计应用程序使用的资源文件和文件大小,帮助开发者优化应用程序的性能和包大小。 总之,Android ApkAnalyzer源码是一个非常有用的工具,它提供了一种便捷的方式来分析和了解Android应用程序的内部结构和信息。开发者可以通过阅读源码了解其实现细节,并根据自己的需求进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值