2018.07.10 初稿
0. 引言
- 介绍利用AS生成自己编写的SDK文件;
1. 简介
- Eclipse可以生成和调用 .jar文件,直接调用其中的API,可以供第三方使用
- AS中生成 .jar比较繁琐,但是可以快速生成 .aar文件,也可以供第三方调用
-
.jar文件和.aar文件的区别
- *.jar文件只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件
.aar文件包含所有资源,class以及res资源文件全部包含; - 如果你只是一个简单的类库那么使用生成的.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar文件。
- 将 .aar文件解压之后,解压文件中包括 .jar文件,如果当前的 .aar文件不包含控件布局,可以直接使用其中的 .jar文件
- *.jar文件只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件
2. 步骤
-
步骤1: 首先sdk的文件是AS中的工程中的一个module,新建module的时候选择Android Library,后面的操作和普通工程一样。
新建module
选择Android Library
选择Android Library后,生成这个文件
- 步骤2: 在coreSDKlibrary中编辑代码,完成之后,编译整个工程后就会自动生成aar包,包的路径在新建的Module ==》 build ===》outputs ==>aar目录下,如图:
第一步,编译整个项目
第二步,编译module(这步可以忽略,不过为了确保生成了aar,加上了这一步)
最终生成的aar文件路径
-
此中方法生成的sdk为debug的sdk版本,若想生成release版本的sdk可以点击右侧的Gradle,然后选择对应的module,打开build的文件夹,选择里面的assembkeRelease版本,双击即可
- 步骤3: 其他工程引用aar包,将arr包复制到libs目录下,配置项目下的build.gradle文件,将 .aar包引入配置gradle我暂时知道两种方法
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
// 此处添加sdk的文件,其余别的就不用改了,比较省事
implementation files('libs/sdk.aar')
}
导入aar到项目中
编译项目
以上操作成功后可以在扩展包下看到被引用的aar包文件