打包并混淆步骤:

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包的代码写在项目中,方便测试。

更多相关文章

  1. NPM 和webpack 的基础使用
  2. 关于Android(安卓)Studio3.2新建项目Android(安卓)resource link
  3. Android(安卓)studio3.x 多渠道打包apk
  4. Android平台上优秀的开源项目
  5. Android官方入门文档[1]创建一个Android项目
  6. GitHub 优秀的 Android(安卓)开源项目
  7. Android(安卓)命令行编译、打包生成apk文件
  8. AIR Native Extension的使用(Android)一 : 打包ane
  9. Ionic 运行报错No resource identifier found for attribute 'ap

随机推荐

  1. 在模仿中精进数据可视化01:国内38城居住自
  2. 多快好省地使用pandas分析大型数据集
  3. 小白来了
  4. 学习Anaconda一定要了解这几件事
  5. 在pandas中利用hdf5高效存储数据
  6. geopandas轻松叠加在线底图
  7. 快速提升效率的6个pandas使用小技巧
  8. 在pandas中使用pipe()提升代码可读性
  9. 答应我,用了这个jupyter插件,别再重复造轮
  10. Python 3.9,来了!