android打包SDK具体操作(包含第三方的jar一起打包)

为什么80%的码农都做不了架构师?>>>   hot3.png

一、背景

因为最近编写的android项目,需要编写对应的SDK给别人使用,还好以前我都是拆成module写的,所以还不太费工夫,不过因为一些module里面包含第三方的jar,所以打包有点麻烦

二、背景

我是看到这位的写法然后实现成功的 利用Gradle打包含第三方类库的jar包,很感谢

三、操作步骤

如果要混淆加密含有JNI的sdk,可以看这篇博客含有JNI的SDK通过proguard混淆加密

1、首先进入对应的module里面查找对应 build.gradle 文件

2、在build.gradle文件中编写对应的打包说明

task makeMyJar(dependsOn:['compileReleaseJavaWithJavac'], type: Jar) {
    archiveName = "printer.jar" //这个是你打包之后的jar包的名字
    from('build/intermediates/classes/release') //这是一些资源
    from(project.zipTree("libs/fastjson-1.2.6.jar")) //第三方jar,是需要打包进入我这个printer包的
    from(project.zipTree("libs/HitiPrinterService.jar")) //第三方jar,是需要打包进入我这个printer包的
    destinationDir = file('build/libs') //生成的jar的输出路径,我这里是在module对应的build文件夹下面的libs文件夹
    exclude('com/maigao/printer/BuildConfig.class') //需要导出的配置
    exclude('com/maigao/printer/BuildConfig\$*.class')
    include('com/maigao/**/*.class') //自己module里面的代码,这个写法是包含所有
    include('com/alibaba/fastjson/**/*.class') //要包含的第三方的代码
    include('com/hiti/**/*.class')  //要包含的第三方的代码
}

3、执行打包(我这里使用的是android studio)

3-1、直接双击shift键,跳出蓝色搜索输入框,在搜索输入框里面输入 Terminal

3-2、在Terminal的命令栏中输入 gradlew makeMyJar,然后接下来就等待它自己打印,如果你没有编写错什么,基本是可以打印成功的

3-3、打印成功的之后,在 Terminal 中会出现 BUILD SUCCESSFUL 字样,然后在 module的build/libs 文件夹下面会有对应的jar包

转载于:https://my.oschina.net/grkj/blog/1813354

你可能感兴趣的:(android打包SDK具体操作(包含第三方的jar一起打包))