Android Studio生成混淆jar包

 

将module生成jar,其内部必须只能是java代码。如果还有resource文件,那就得打aar文件了。

在你要打jar包的module build文件中,加上一个生成jar包的task。(其实即使不添加,在整个工程build时也会生成jar文件的。在build/intermediates/bundles/release/classes.jar可以找到。只是没混淆罢了。)

1240

图一

在图1中红箭头标注的文件内加入下面代码:

task makeJar(type: proguard.gradle.ProGuardTask, dependsOn: "build") {
    delete 'libs/usbSdk.jar'
    // 未混淆的jar
    injars 'build/intermediates/bundles/debug/classes.jar'
    // 混淆后的jar路径
    outjars 'libs/usb.jar'
    // 具体需要keep住的类
    configuration 'proguard-rules.pro'
}

然后在‘proguard-rules.pro’中,添加如下代码

-libraryjars 'C:\Program Files\Java\jre1.8.0_144\lib\rt.jar'



-libraryjars 'E:\Android\sdk\platforms\android-19\android.jar'


-optimizationpasses 5


-dontusemixedcaseclassnames


# -keep public class * extends android.app.Activity


-keep class com.tiannuo.usb_8.* {


public <fields>;


public <methods>;


}

其中:-libraryjars 'C:\Program Files\Java\jre1.8.0_144\lib\rt.jar'和
-libraryjars 'E:\Android\sdk\platforms\android-19\android.ja 分别为jdk的位置和sdk的位置。

‘com.tiannuo.usb_8.*’是module的包名。

最后,在Terminal中输入'gradlew makeJar'。提示“BUILD SUCCESSFUL”成功。



作者:瞎子点灯
链接:http://www.jianshu.com/p/06d9345f4034
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

转载于:https://my.oschina.net/u/2542649/blog/1573973

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值