使用android studio生成jar库
最近在unity3d项目中接入讯飞语音sdk,以前接安卓sdk的时候,一般是使用eclipse的adt进行构建,在adt上生成jar很方便,直接导出就是了,而在android studio中生成jar,其实也很方便,不过需要敲几行gradle脚本命令,使用gradle中的一种task脚本命令生成jar,之后生成jar也是直接点击运行对应的task就可以了。
打开app目录下的build.gradle文件,添加以下生成jar的命令:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
task delete_old_helloworld_jar(type: Delete) {
delete 'build/libs/HelloWorld.jar' //先删除之前生成的jar包
}
task build_helloworld_jar(type: Jar, dependsOn: ['delete_old_helloworld_jar', 'build']) {
archiveName = 'HelloWorld.jar' //jar包的名字
from('build/intermediates/classes/release') //把这个目录下的东东编译成jar包
destinationDir = file('build/libs') //编译出的jar包的输出目录
exclude('com/yly/helloworld/BuildConfig.class') //过滤多余的class文件
exclude('com/yly/helloworld/BuildConfig\$*.class') //过滤多余的class文件
exclude('**/R.class') //过滤多余的class文件
exclude('**/R\$*.class') //过滤多余的class文件
include('com/yly/helloworld/**') //包含需要打包到jar中的文件
}
|
完整的build.gradle文件内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
//apply plugin: 'com.android.application'
apply plugin: 'com.android.library'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
//applicationId "com.yly.helloworld"
minSdkVersion 15
targetSdkVersion 25
versionCode 1
versionName "1.0"
//testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
testCompile 'junit:junit:4.12'
}
task delete_old_helloworld_jar(type: Delete) {
delete 'build/libs/HelloWorld.jar' //先删除之前生成的jar包
}
task build_helloworld_jar(type: Jar, dependsOn: ['delete_old_helloworld_jar', 'build']) {
archiveName = 'HelloWorld.jar' //jar包的名字
from('build/intermediates/classes/release') //把这个目录下的东东编译成jar包
destinationDir = file('build/libs') //编译出的jar包的输出目录
exclude('com/yly/helloworld/BuildConfig.class') //过滤多余的class文件
exclude('com/yly/helloworld/BuildConfig\$*.class') //过滤多余的class文件
exclude('**/R.class') //过滤多余的class文件
exclude('**/R\$*.class') //过滤多余的class文件
include('com/yly/helloworld/**') //包含需要打包到jar中的文件
}
|
写完后,展开右边的“Gradle”选项,双击运行“build_helloworld_jar”选项:
过一会,就会在build/libs目录下生成我们需要的jar包啦:
android studio加入第三方jar包就比eclipse方便很多,直接ctrl + c复制jar文件,然后ctrl + v粘贴到app/libs目录下,然后选中该jar包右键选择“Add As Library”选项即可