android studio 打jar包并混淆

来源:互联网 发布:网络安全法 实名备案 编辑:程序博客网 时间:2024/06/09 23:26

打包并混淆步骤:

1、将项目改成library
在build.gradle中将apply plugin: ‘com.android.application’改为apply plugin: ‘com.android.library’,并注释掉applicationId。

2、生成classes.jar文件
打开studio右侧的Gradle菜单 点开项目下的Tasks下的build下的assembleRelease,然后在在项目的app/build/intermediates/bundles/release目录下就会生成classes.jar,这个就是项目没有混淆之前的jar包。

3、修改依赖

dependencies {    def state = true //打包时设置为true 运行时设置为false    if (state) {        provided files('libs/umeng-analytics-v5.6.4.jar')    } else {        compile files('libs/umeng-analytics-v5.6.4.jar')    }}

4、混淆
在build.gradle中,更改minifyEnabled为true
并且更改proguard-rules.pro文件的内容。

5、运行task
在build.gradle中添加代码

def vName = '1.0'  //可以自定义的版本号def vCode = 1task makeJar(type: Copy, dependsOn: ['build']) {    from('build/intermediates/bundles/release/')    into('build/libs')    include('classes.jar')    rename('classes.jar', "momo-test${vName}.${vCode}.jar")}

将鼠标放在makeJar方法上,点击右键,选择运行。
运行之后在app/build/libs下就会有这个没混淆的jar包了。

注意:
1、打包时步骤4中, provided为只打包自己项目中的内容,依赖的jar会提供给别人使用。compile为会将使用的第三方依赖也进行打包,如果使用这种方式的话,记得将第三方提供的混淆文件拷到自己的混淆文件中,否则全部混淆会出bug。
2、最好在android项目中建一个module,然后用module打jar包,这样可省去步骤1,并且可以将测试jar包的代码写在项目中,方便测试。

0 0
原创粉丝点击