当打包apk的时候报错,并提示以下错误,找了很久终于找到方法解决
No field producerIndex in class Lrx/internal/util/a/ac;
http://note.youdao.com/noteshare?id=4f8fe77e7ea6e479f9d1eca3eb1333f1
首先要在app下的build.gradle中添加如下代码:
compile
'io.reactivex:rxandroid:1.1.0'
compile
'io.reactivex:rxjava:1.1.0'
compile
'com.artemzin.rxjava:proguard-rules:1.1.0.0'
其格式如RXJava,只是需要在版本后面多加一个.0;
然后在proguard-rules.pro 添加RXjava的混淆代码:
#Rxjava RxAndroid
-dontwarn
rx.*
-dontwarn
sun.misc.**
-keepclassmembers
class rx.internal.util.unsafe.*ArrayQuene*Field*{
long producerIndex;
long consumerIndex;
}
-keepclassmembers
class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef {
rx.internal.util.atomic.LinkedQueueNode producerNode;
rx.internal.util.atomic.LinkedQueueNode consumerNode;
}
-keepclassmembers
class rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef {
rx.internal.util.atomic.LinkedQueueNode consumerNode;
}
注意:在使用中,直接复制或者替换文件都会导致apk打包失败,需要自己再敲一遍!!!