最近在做一个应用市场的项目,需要在centos7下面对apk解包读取其信息,这就想到了使用Google的解包工具aapt,但是由于中国的原因,国内访问原生工具的地址就有些麻烦,这里就贴出地址:http://android-apktool.googlecode.com/files/apktool-install-linux-r04-brut1.tar.bz2。供有条件的下载,如果下载不了的话,就进行下面我们自己动手搭建。
这里我提供了运行文件aapt,下载地址是:
链接:http://pan.baidu.com/s/1c5kmuE 密码:jd3t。
1、下载后解压,把该文件放在linux的/usr/bin下面,并赋予777的权限
2、运行/usr/bin/aapt d badging 58089640530ad.apk命令进行包的解析
apk包是你自己的包。这时会出现
-bash: /usr/bin/aapt: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录
的问题,这里就是缺少了/lib/ld-linux.so.2库,使用下列命令进行安装
#yum install glibc.i686
注:这里是64位,就是要i686,如果是32位,就是对应的i386
3、再次运行解包命令
此时发现发现出现了
/usr/bin/aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
错误,这里就是没找到该库,需要使用下列命令安装libz.so.1,
#yum install zlib.i686
4、第三次运行解包命令
发现还有错误
/usr/bin/aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
发现还有libstdc++.so.6没安装,就使用下列的命令进行安装
#yum install libstdc++-4.4.7-3.el6.i686
注:这里有版本号,如果不对可以搜索最新的进行安装,我使用该版本没什么问题就没有去弄,有新版本或者更好的可以在评论区指出
5、这次运行解包命令就顺利完成了
具体结果看自己的命令,还有一部分没显示