java混淆打包,retrofit+rxjava 混淆

** 下面是我找问题的时候遇见的不错的文章**

**混淆遇到问题 **

retrofit 里的okhttp3 和我的拦截器 版本不一致 造成

compile 'com.squareup.okhttp3:logging-interceptor:3.0.0-RC1'

所以当你compile 一些类库的时候 要多注意

build.gradle文件声明

扫描二维码关注公众号,回复: 14511277 查看本文章
compile 'io.reactivex:rxandroid:1.1.0'
compile 'io.reactivex:rxjava:1.1.2'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
compile 'com.squareup.okhttp3:logging-interceptor:3.3.0'

proguard-rules.pro 混淆

-dontwarn javax.annotation.**
-dontwarn javax.inject.**
# OkHttp3
-dontwarn okhttp3.logging.**
-keep class okhttp3.internal.**{*;}
-dontwarn okio.**
# Retrofit
-dontwarn retrofit2.**
-keep class retrofit2.** { *; }
-keepattributes Signature-keepattributes Exceptions
# RxJava RxAndroid
-dontwarn sun.misc.**
-keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* {
    long producerIndex;
    long consumerIndex;
}
-keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
    rx.internal.util.atomic.LinkedQueueNode producerNode;
}
-keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
    rx.internal.util.atomic.LinkedQueueNode consumerNode;
}

# Gson
-keep class com.google.gson.stream.** { *; }
-keepattributes EnclosingMethod
-keep class org.xz_sale.entity.**{*;}//这是你定义的实体类



转载于:https://www.jianshu.com/p/0ef702c206fa

猜你喜欢

转载自blog.csdn.net/weixin_42602900/article/details/126579404