码迷,mamicode.com
首页 > 移动开发 > 详细

[Android] Android统计Apk , jar包方法数

时间:2016-10-26 16:08:48      阅读:347      评论:0      收藏:0      [点我收藏+]

标签:eth   style   mit   erb   field   java代码   method   color   多少   

reference to : http://www.jianshu.com/p/61e8f803e0d1

 

Android在开发过程中,随着引用的库以及业务的增多,不可避免的会出现64K limit问题,也就是方法数过多的问题,Java代码中的Method总数和Field总数都不能超过65535个,那统计一下每一个jar包中包含多少个Method还是很有必要的,目前Google已经为我们实现了这样的工具:

dexdump命令 (查看apk的method总数)

#查看apk的method总数
dexdump -f app.apk | grep method_ids_size
#查看apk的field总数
dexdump -f app.apk | grep field_ids_size

 但是这只是apk文件,如果是jar包呢,上面的命令不能满足需求,那我们可以用下面的命令来实现:

dx --dex --verbose --no-strict --output=temp.dex xxx.jar > /dev/null

# temp.dex 生成的dex文件存放的路径
# xxx.jar 目标jar文件

生成temp.dex文件后,执行以下命令:

cat temp.dex | head -c 92 | tail -c 4 | hexdump -e ‘1/4 "%d\n"‘

我对netty-3.9.5.Final.jar计算后,输出了8302
在Android上用上Netty这个库,可真是重量级啊!

 

[Android] Android统计Apk , jar包方法数

标签:eth   style   mit   erb   field   java代码   method   color   多少   

原文地址:http://www.cnblogs.com/0616--ataozhijia/p/6000562.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!