美文网首页
Jar包及混淆

Jar包及混淆

作者: zhi5ai | 来源:发表于2019-04-10 10:56 被阅读0次

几年前自学android的时候就比葫芦画瓢的整过aar,当时好像是为了学自定义 view,最后还把aar发布到了Jcenter上。然后就出现了断层,如今需要给别人提供SDK,才有印象自己曾经是做过的,但是笔记什么的也不知道记到哪儿了,两眼一抹黑,写个笔记吧!

注:关于打包,有两种格式:*.jar 和 *.aar,
区别:前者只包含代码文件;而后者包含(图片、布局等)资源文件。
这次需要提供的SDK只包含代码,所以就选Jar包!

makeJar

首先是makeJar,了解下。需要先在你的android library中的build.gradle中添加如下:

task makeJar(type: proguard.gradle.ProGuardTask, dependsOn: "build") {
    injars 'build/intermediates/intermediate-jars/release/classes.jar' // 未混淆的jar路径
    outjars 'build/outputs/mylibrary-1.0.0.jar' // 混淆后的jar输出路径
    configuration 'proguard-rules.pro' // 混淆协议
}

在Gradle中选yourlibrary->Tasks->other->makeJar
或者

// Mac 系统
./gradlew makeJar
// Windows 系统
gradlew makeJar

injars 指明的路径写其他的时候,makeJar 会出现以下类似问题。(就算你所写路径下确实存在classes.jar,也会问题)


148881554865651_.pic_hd.jpg

Pro guard打包混淆Build Failed,报错:


148901554868373_.pic_hd.jpg

方法:

#忽略警告
-ignorewarnings

最后记得在proguard-rules.pro中keep 你对外提供的

完成!

参考链接

附:

重新设计了结构之后的SDK,在打包后,出现了AbstractMethodError错误


149511555056905_.pic_hd.jpg

问题解决:抽象类里的抽象方法被混淆了,在proguard-rules.pro中加入对该方法的keep就好了

相关文章

  • Jar包及混淆

    几年前自学android的时候就比葫芦画瓢的整过aar,当时好像是为了学自定义 view,最后还把aar发布到了J...

  • jar包混淆

    生成混淆的jar包需要在module的build.gradle文件中添加以下两个脚本函数,最后运行对应的gradl...

  • 事件分发库-EventBus

    github 准备 下载jar包 eventbus-3.1.1.jar 混淆 http://greenrobot....

  • android eclipse 项目打成jar包及jar混淆

    项目前段时间要抽取核心功能做成sdk版本,有jar包和apk。牵扯到将项目打包成jar和jar混淆2部分 在ecl...

  • Android Studio打Jar包方式(可混淆)

    一、普通生成Jar包 二、 普通生成Jar包自定义类名jar生成方式,可以去除资源 三、混淆后的jar生成方式,可...

  • gradle脚本生成jar包

    生成Jar包 指定模块下执行 gradle makeJar 生成混淆jar idea中打包所有jar为可发布tar...

  • Android Studio 混淆配置

    0. 配置标准 1. 输出混淆了的 jar 包 1. build.gradle 脚本 生成 jar 包 上面这个就...

  • Android里混淆jar包

    Android里,使用Ellispe混淆jar包的时候,如果jar包里没有访问资源文件的代码,那么直接配置prog...

  • Android studio多module混淆成一个Jar

    Github源码:https://github.com/AnJiaoDe/MakeJar 混淆Jar包,首先得有一...

  • Android jar包的混淆

    所有的App都在CPU上裸奔。 既然机器能跑,那么机器就能识别这些代码,混淆的意义是为了不让别人识别,因为代码中的...

网友评论

      本文标题:Jar包及混淆

      本文链接:https://www.haomeiwen.com/subject/wqzgiqtx.html