##前提
- 使用AndroidStudio新建一个project,名字叫
Test
- 在工程里新建一个
module
(library类型的),叫OneSDK
, - 工程Test不用依赖这个library。
- 在OneSDK中写入代码/放置资源(如果要混淆,要设置 minifyEnabled
true
,并设置好proguard-rules.pro
)
##aar
组成:class文件+清单文件+资源文件
生成
- 执行这个命令
- 生成的文件路径:
OneSDK/build/outputs/aar/OneSDK-debug.aar
OneSDK/build/outputs/aar/OneSDK-release.aar
使用
- 使用release版本的arr,改名成
OneSDK.aar
- 拷贝到
app/libs
下 - 修改 配置文件
Test/build.gradle
repositories {
.....
flatDir {
dirs 'libs'
}
}
app/build.gradle
dependencies {
compile(name: 'OneSDK', ext: 'aar')
}
##jar
组成:class文件+清单文件
生成
方法和生成arr的一样,生成文件路径:
// default ? release ? (我的是defaut)
onesdk/build/intermediates/bundles/default/classes.jar
- 另外一种生成方法
/**
在 onesdk/build.gradle 里 添加 如下代码
作用是复制Jar 并重命名
*/
task makeJar(type: Copy) {
delete 'build/libs/onesdk.jar'
from('build/intermediates/bundles/default/')
into('build/libs/')
include('classes.jar')
rename ('classes.jar', 'onesdk.jar')
}
makeJar.dependsOn(build)
然后执行下面的命令
使用
可以改名再使用这个jar包
扩展
- 如何在AndroidStudio中生成jar,并能用java命令执行能,如下:
-
在AndroidStudio中新建一个java Library
- -
点击jar 命令生成了一个lib:lib.jar
-
把lib.jar放到一个文件夹下,解压lib.jar ,修改lib/META-INFO/MANIFEST.MF文件,在其最后加入一句话:
Main-Class: com.example.Plus
-
修改完成后,吧这个文件复制到lib.jar同一个目录下,然后更新lib.jar:
jar umf lib/META-INF/MANIFEST.MF lib.jar
- u 更新现有档案
- m 包含指定清单文件中的清单信息
- f 指定档案文件名