文件结构
AAR 文件的文件扩展名为 .aar,Maven 工件类型也应当是 aar。文件本身是一个包含以下强制性条目的 zip 文件:
- AndroidManifest.xml
- classes.jar
- res
- R.txt
- META-INF
AndroidManifest是清单文件。
官网网址:https://developer.android.google.cn/guide/topics/manifest/manifest-intro
每个应用项目必须在项目源设置的根目录中加入 AndroidManifest.xml 文件(且必须使用此名称)。 清单文件会向 Android 构建工具、Android 操作系统和 Google Play 描述应用的基本信息。 重点是,清单文件需声明以下内容:
- 应用的软件包名称。应用的软件名为package对应的字段,使用android构建工具进行构建时,该值会作用于R值以及使用package名称声明的任何相关类。com.example.myapp.R >> R “.MainActivity” >> com.example.myapp.MainActivity。 使用gradle进行编译时,build.gradle中的applicationId会替代package 的值。
- 应用的组件。应用的组件分为两大类,第一类是四大组件,四大组件必须在清单文件中声明(这部分需要画个问号,因为android广播可以动态注册);第二类是子软件包的组件,子软件包的组件,则在声明时需要加上子软件包的名称。
- 应用为访问系统或其他应用的受保护部分所需的权限。
- 应用需要的硬件和软件功能,这些功能会影响哪些设备能够从 Google Play 安装应用。
META-INF文件夹里是签名文件。
此外,AAR 文件可能包含以下可选条目中的一个或多个: /assets/ /libs/名称.jar /jni/abi 名称/名称.so(其中 abi 名称 是 Android 支持的 ABI 之一) /proguard.txt /lint.jar
|