Rxjava 在签名的 apk 中不起作用

Posted

技术标签:

【中文标题】Rxjava 在签名的 apk 中不起作用【英文标题】:Rxjava not working in signed apk 【发布时间】:2016-06-17 22:05:09 【问题描述】:

我在我的应用程序中使用rxjava,它在我测试时工作正常,但是当我尝试在我的android 设备中运行签名的apk 文件时,应用程序在涉及@987654323 的代码时崩溃了@,我在proguard-rules中添加了这个,但应用程序仍然崩溃,有人知道原因吗?

【问题讨论】:

你的日志堆栈跟踪在哪里? 请提供代码和错误,否则我们无法帮助您 其实这个问题只有在我手机上安装签名的apk文件时才会出现,所以我无法实际调试问题,有没有反正手机上安装的时候能拿到log,因为当我使用计算机测试它时它工作正常 @SiyuanHu 然后将 ACRA 或 Crashlytics 添加到应用程序以获取堆栈跟踪。 【参考方案1】:

请显示您添加的程序规则。确保您已添加以下所有规则

     -keep class rx.schedulers.Schedulers 
         public static <methods>;
        
     -keep class rx.schedulers.ImmediateScheduler 
         public <methods>;
        
     -keep class rx.schedulers.TestScheduler 
        public <methods>;
     
     -keep class rx.schedulers.Schedulers 
        public static ** test();
       
      -keepclassmembers class rx.internal.util.unsafe.*ArrayQueue*Field* 
       long producerIndex;
       long consumerIndex;
      
     -keepclassmembers class rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef 
        long producerNode;
         long consumerNode;
      

【讨论】:

我确实添加了这个,但是还是不行,除了添加proguard规则还有什么需要做的吗? 崩溃时发布您的日志。会有帮助的

以上是关于Rxjava 在签名的 apk 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

带有新发件人 ID 和现有密钥库的推送通知在签名的 apk 中不起作用

使用 google for android 登录在发布 apk 中不起作用

为啥 onSubscribe 在 rxjava 中不起作用?

带有 RxJava Single 的 Android Livedata 在房间数据库中不起作用

Firebase Phone Auth 在发布版本中不起作用

音频在 APK 中不起作用