一、apk中方法数量
./android-sdk-linux/build-tools/23.0.2/dexdump -f apk路径 | grep method_ids_size
二、jar中方法数量(转载)
#! /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 -c 92 | tail -c 4 | hexdump -e '1/4 "%d\n"'`
# 显示结果
echo $METHOD_COUNT
# 删除临时文件temp.dex
rm -f temp.dex
保存为jarmethod.sh
为了使用起来更方便,建议将其添加一个软链到bin目录,比如可以这样:
# 先更改下权限
chmod 0755 jarmethod.sh
# 软连到bin目录,这样可以在任何目录直接执行该工具
cd /usr/local/bin
ln -s jarmethod.sh路径 jarmethod
使用方法:jarmethod jar包路径