经常需要程序去读取APK的信息,网上很多介绍类似于Zip解压缩之类的方法去获取Androidmanifest.xml里面的信息,但是这种方法并不可取,因为里面取到的有可能是“引用ID”。我们可以用ApkUtil工具类。
1.下载ApkUtil和aapt工具
ApkUtil下载地址列表
https://code.google.com/p/cfuture09-apkutil/downloads/list
部分包中已经包含Windows下可运行的aapt工具
2.程序中使用
try { String demo = "E:/androidApk/2012/05/百宝工具箱/1.0/signed/Toolbox-360.apk"; if (args.length > 0) { demo = args[0]; } ApkInfo apkInfo = new ApkUtil().getApkInfo(demo); System.out.println(apkInfo); } catch (Exception e) { e.printStackTrace(); }
3.Linux环境下使用aapt
如果开发环境或者服务器是Linux,使用aapt的程序部署时有几点要注意的
- aapt依赖的工具zlib需要以32位编译安装,较低版本的zlib可能也需要升级到更高版本的
- 默认的aapt路径是lib/aapt,最好自己通过ApkUtil提供的方法修改为你的aapt路径(个人试过如果不主动设置可能这次配好了,服务器一旦重启程序就又找不到aapt了)
相关推荐
python aapt 分析APK文件,获取应用包名,版本号,版本名 代码直接复制即可,亲测多次可用,
总的来说,解决CMD中aapt获取apk信息时的乱码问题,关键在于调整CMD的字符编码设置,使其支持UTF-8。通过修改注册表,我们可以实现这一目标,从而避免因为编码不匹配导致的显示异常。在日常开发和使用命令行工具时,...
标题 "aapt解析apk版本信息" 涉及到的是Android开发中的一个重要工具——Android Asset Packaging Tool(aapt)。aapt是Android SDK的一部分,用于处理应用程序的资源,并生成相应的二进制XML文件、R类文件以及APK包...
在这个主题中,我们将深入探讨如何使用apktool.jar、aapt.exe以及APKTool.cmd这三款工具进行APK的反编译过程。 首先,`apktool.jar` 是一个开源的工具,由IzzySoft开发,主要用于反编译APK文件。它能够解析APK的二...
aapt-apk工具
要读取这些信息,我们需要使用Java的ZipFile类来解压APK文件,并找到AndroidManifest.xml。 以下是一个简单的步骤概述: 1. **打开APK文件**:使用`java.util.zip.ZipFile`类打开APK文件,传入APK的文件路径作为...
Android 批量读取APK 包名,版本信息, 内内置apk 跟aapt.ext package: name='com.tencent.mobileqq' versionCode='432' versionName='6.6.0' platformBuildVersionName=''
`aapt`(Android Asset Packaging Tool)是Android SDK中用于处理应用资源的命令行工具,它可以解析APK文件,提取出其中的各种信息。在Java环境下,我们可以通过调用aapt的Java API来实现对APK文件的解析,尤其是在...
aapt.exe 解析apk工具
在这个场景下,"查看APK签名信息和版本号工具"显然是一个用于帮助开发者获取这些关键信息的实用工具,而"aapt.exe"则是实现这一功能的关键组件。 **aapt.exe**是Android Asset Packaging Tool的缩写,它是Android ...
我然后就给他装了Android SDK通过build-tools下面的aapt.exe文件执行命令即可得到所有apk信息。 aapt命令 aapt l[ist] [-v] [-a] file.{zip,jar,apk} List contents of Zip-compatible archive. aapt d[ump] [–...
这个项目可能包括了读取APK,调用aapt,解析输出结果等功能。通过学习和理解该项目的源代码,你可以更好地掌握在Windows环境下使用C#解析APK的技巧。 总的来说,利用C#结合aapt解析Android APK,需要理解APK的内部...
使用安卓里面的aapt工具包读取apk基本信息,当前版本是在window下运行的。如果要在Linux下运行,需要将aapt换成linux版本的.如果linux是64位系统的,需要注意系统里面还要安装3个包(glibc.i686,zlib.i686,libstdc...
功能:可查看单个或目录下所有apk文件的渠道号、包名、版本号 使用:以查看包名、版本号为例 1、copy文件version.sh到apk文件所在目录 2、查看所有apk包名、版本号 执行命令./version.sh查看所有apk文件版本号及...
2. **查看信息 (dump)**: `aapt d[ump]`命令用于获取APK的详细信息,例如应用的元数据、权限、资源表等。可用的`WHAT`参数包括: - `badging`: 显示应用的标签和图标信息。 - `permissions`: 列出APK的所有权限。 ...
apkUtil是一个用来解析apk安装包的工具,通过它可以获取一个安装包的图标、程序名、所需android平台,权限等信息,并将其转换为java对象。 该工具依赖于aapt工具,目前仅支持在windows平台上运行。 程序在运行时,...
3. **获取信息**:在终端中,进入APK文件所在目录,然后执行`aapt dump badging <apk_file_name>.apk`,同样会显示出APK的详细信息。 除了`dump badging`命令,AAPT还有其他几个有用的子命令: - `list`:列出APK...
`apk`解析工具`AAPT`(Android Asset Packaging Tool)是Android开发中的一个重要组件,主要用于处理Android应用的资源文件、编译资源以及生成应用的`R`类。它是Android SDK的一部分,提供了命令行接口,使开发者可以...
1. **读取APK文件**:使用Java的`java.util.zip.ZipFile`类打开APK文件,这允许我们访问ZIP文件中的所有条目。 ```java ZipFile apkFile = new ZipFile("path_to_apk_file.apk"); ``` 2. **查找AndroidManifest....
**Android Asset Packaging Tool (AAPT) 是Android开发中不可或缺的一部分,主要用于处理APK中的资源和配置信息。在本文中,我们将深入探讨AAPT的工作原理、功能以及如何使用它来检查和修改APK文件。** **一、AAPT...