Analyse the APK package, give suggestions of reducing the APK's size; Compare two APK and find out the most significant increment on size.
针对 APK 安装包的分析检测工具,根据一系列设定好的规则,检测 APK 是否存在特定的问题,并输出较为详细的检测结果报告,用于分析排查问题以及版本追踪.
{
"--apk":"apk_path",
"--output":"result_path/result",
"--format":"mm.html,mm.json",
"--formatConfig":[
{
"name":"-countMethod",
"group":[
{
"name":"Android System",
"package":"android"
},
{
"name":"java system",
"package":"java"
},
{
"name":"com.test",
"package":"com.test"
}
]
}
],
"options":[
{
"name":"-manifest"
},
{
"--suffix":"png, jpg, jpeg, gif, arsc",
"--min":"10",
"name":"-fileSize",
"--order":"desc"
},
{
"--group":"package",
"name":"-countMethod"
},
{
"name":"-checkResProguard"
},
{
"--min":"10",
"name":"-findNonAlphaPng"
},
{
"name":"-checkMultiLibrary"
},
{
"--suffix":"png, jpg, jpeg, gif, arsc",
"name":"-uncompressedFile"
},
{
"name":"-countR"
},
{
"name":"-duplicatedFile"
},
{
"name":"-unusedAssets",
"--ignoreAssets":[
"*.so"
]
}
]
}
注意:--output 参数,路径的最后是文件名,不写文件名将生成 .json、 .html 文件
java -jar jar_path --config congfig_path
生成,result.json 文件。
json_path = "json_path"
with open(json_path, 'r') \
as load_f:
load_dict = json.load(load_f)