版权所有 (C) 2012 索尼移动通信公司
本文件是 ApkAnalyser 的一部分。
根据 Apache 许可证 2.0 版(以下简称“许可证”)授权; 除非遵守许可证,否则您不得使用此文件。 您可以在以下网址获取许可证副本:
http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则根据许可证分发的软件均按“原样”分发, 不附带任何明示或暗示的担保或条件。 请参阅许可证以了解管理权限和限制的特定语言。
==============================================================================
ApkAnalyser 是一个静态的虚拟分析工具,用于检查和验证 Android 应用的开发工作。它是一个完整的工具链,支持对二进制应用进行修改并添加更多输出。然后您可以重新打包、安装、运行,并从 logcat 验证结果。ApkAnalyser 还支持资源分析,您可以解码 XML、查找资源引用并检测应用中的潜在问题。
它是一个独立的 J2SE 应用程序,遵循 Apache 2.0 许可证发布,100% 用 Java 编写。
以下是导入并修改的部分 OSS 项目代码:
以下 OSS 项目以 jar 库形式使用:
首先,最新版本的 ApkAnalyser 可在以下地址获取:
https://github.com/sonyxperiadev/ApkAnalyser
ApkAnalyser 包含两个开源项目:smali 和 apktool。 这些项目必须按以下顺序构建:
所有项目均使用 Maven2 构建系统管理。
http://maven.apache.org/download.html
项目可在 JDK 1.5、1.6 或 1.7 上构建。
获取最新代码 git clone git://github.com/sonyxperiadev/ApkAnalyser.git
构建 smali 项目 cd smali mvn install
构建 apktool 项目 cd ../apktool mvn install
安装 jgraphx 到本地 Maven 仓库 cd ../apkanalyser mvn install:install-file -Dfile=lib/jgraphx.jar -DgroupId=com.mxgraph -DartifactId=jgraphx -Dversion=1.7.1.9 -Dpackaging=jar -DgeneratePom=true
构建并打包 ApkAnalyser mvn assembly:assembly
可执行 jar 文件应位于 apkanalyser\target\apkanalyser-{version}-exec.jar
可选地,也可以使用 "mvn eclipse:eclipse" 命令生成 Eclipse 项目。
启动它,只需执行:
java -jar ApkAnalyser.jar
有时,ApkAnalyser 在分析 dalvik 字节码时会消耗大量内存。加载多个大型 odexed APK 文件时尤其可能内存不足。此时,应通过 "-Xmx1024m" 参数显式增加最大堆大小:
java -Xmx1024m -jar ApkAnalyser.jar
张博杰,索尼移动通信 [email protected]