解决极光推送Jpush混淆报错问题

[2013-11-28 13:17:19 - Sjh_android] Proguard returned with error code 1. See console
[2013-11-28 13:17:19 - Sjh_android] Note: there were 426 duplicate class definitions.
[2013-11-28 13:17:19 - Sjh_android]       You should check if you need to specify additional program jars.
[2013-11-28 13:17:19 - Sjh_android] Unexpected error while computing stack sizes:
[2013-11-28 13:17:19 - Sjh_android]   Class       = [cn/jpush/android/api/InstrumentedActivity]
[2013-11-28 13:17:19 - Sjh_android]   Method      = [<clinit>()V]
[2013-11-28 13:17:19 - Sjh_android]   Exception   = [java.lang.IllegalArgumentException] (Stack size becomes negative 

after instruction [12] invokevirtual #57 in [cn/jpush/android/api/InstrumentedActivity.<clinit>()V])
[2013-11-28 13:17:19 - Sjh_android] Unexpected error while editing code:
[2013-11-28 13:17:19 - Sjh_android]   Class       = [cn/jpush/android/api/InstrumentedActivity]
[2013-11-28 13:17:19 - Sjh_android]   Method      = [<clinit>()V]
[2013-11-28 13:17:19 - Sjh_android]   Exception   = [java.lang.IllegalArgumentException] (Stack size becomes negative 

after instruction [12] invokevirtual #57 in [cn/jpush/android/api/InstrumentedActivity.<clinit>()V])
[2013-11-28 13:17:19 - Sjh_android] java.lang.IllegalArgumentException: Stack size becomes negative after instruction 

[12] invokevirtual #57 in [cn/jpush/android/api/InstrumentedActivity.<clinit>()V]
[2013-11-28 13:17:19 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.evaluateInstructionBlock(StackSizeComputer.java:334)
[2013-11-28 13:17:19 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.visitBranchInstruction(StackSizeComputer.java:197)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.instruction.BranchInstruction.accept

(BranchInstruction.java:140)
[2013-11-28 13:17:19 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.evaluateInstructionBlock(StackSizeComputer.java:355)
[2013-11-28 13:17:19 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.visitCodeAttribute0(StackSizeComputer.java:153)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.attribute.visitor.StackSizeComputer.visitCodeAttribute

(StackSizeComputer.java:110)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.editor.StackSizeUpdater.visitCodeAttribute

(StackSizeUpdater.java:49)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.editor.CodeAttributeEditor.visitCodeAttribute0

(CodeAttributeEditor.java:376)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.editor.CodeAttributeEditor.visitCodeAttribute

(CodeAttributeEditor.java:311)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.optimize.DuplicateInitializerInvocationFixer.visitCodeAttribute

(DuplicateInitializerInvocationFixer.java:92)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.attribute.CodeAttribute.accept(CodeAttribute.java:101)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.ProgramMethod.attributesAccept(ProgramMethod.java:79)
[2013-11-28 13:17:19 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.AllAttributeVisitor.visitProgramMember(AllAttributeVisitor.java:95)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.util.SimplifiedVisitor.visitProgramMethod

(SimplifiedVisitor.java:91)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.ProgramMethod.accept(ProgramMethod.java:71)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.ProgramClass.methodsAccept(ProgramClass.java:504)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.visitor.AllMethodVisitor.visitProgramClass

(AllMethodVisitor.java:47)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.classfile.ClassPool.classesAccept(ClassPool.java:116)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.optimize.Optimizer.execute(Optimizer.java:500)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.ProGuard.optimize(ProGuard.java:306)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.ProGuard.execute(ProGuard.java:115)
[2013-11-28 13:17:19 - Sjh_android] 	at proguard.ProGuard.main(ProGuard.java:492)
[2013-11-28 13:20:10 - Sjh_android] Proguard returned with error code 1. See console
[2013-11-28 13:20:10 - Sjh_android] Note: there were 426 duplicate class definitions.
[2013-11-28 13:20:10 - Sjh_android]       You should check if you need to specify additional program jars.
[2013-11-28 13:20:10 - Sjh_android] Unexpected error while computing stack sizes:
[2013-11-28 13:20:10 - Sjh_android]   Class       = [cn/jpush/android/api/InstrumentedActivity]
[2013-11-28 13:20:10 - Sjh_android]   Method      = [<clinit>()V]
[2013-11-28 13:20:10 - Sjh_android]   Exception   = [java.lang.IllegalArgumentException] (Stack size becomes negative 

after instruction [12] invokevirtual #57 in [cn/jpush/android/api/InstrumentedActivity.<clinit>()V])
[2013-11-28 13:20:10 - Sjh_android] Unexpected error while editing code:
[2013-11-28 13:20:10 - Sjh_android]   Class       = [cn/jpush/android/api/InstrumentedActivity]
[2013-11-28 13:20:10 - Sjh_android]   Method      = [<clinit>()V]
[2013-11-28 13:20:10 - Sjh_android]   Exception   = [java.lang.IllegalArgumentException] (Stack size becomes negative 

after instruction [12] invokevirtual #57 in [cn/jpush/android/api/InstrumentedActivity.<clinit>()V])
[2013-11-28 13:20:10 - Sjh_android] java.lang.IllegalArgumentException: Stack size becomes negative after instruction 

[12] invokevirtual #57 in [cn/jpush/android/api/InstrumentedActivity.<clinit>()V]
[2013-11-28 13:20:10 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.evaluateInstructionBlock(StackSizeComputer.java:334)
[2013-11-28 13:20:10 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.visitBranchInstruction(StackSizeComputer.java:197)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.instruction.BranchInstruction.accept

(BranchInstruction.java:140)
[2013-11-28 13:20:10 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.evaluateInstructionBlock(StackSizeComputer.java:355)
[2013-11-28 13:20:10 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.StackSizeComputer.visitCodeAttribute0(StackSizeComputer.java:153)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.attribute.visitor.StackSizeComputer.visitCodeAttribute

(StackSizeComputer.java:110)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.editor.StackSizeUpdater.visitCodeAttribute

(StackSizeUpdater.java:49)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.editor.CodeAttributeEditor.visitCodeAttribute0

(CodeAttributeEditor.java:376)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.editor.CodeAttributeEditor.visitCodeAttribute

(CodeAttributeEditor.java:311)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.optimize.DuplicateInitializerInvocationFixer.visitCodeAttribute

(DuplicateInitializerInvocationFixer.java:92)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.attribute.CodeAttribute.accept(CodeAttribute.java:101)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.ProgramMethod.attributesAccept(ProgramMethod.java:79)
[2013-11-28 13:20:10 - Sjh_android] 	at 

proguard.classfile.attribute.visitor.AllAttributeVisitor.visitProgramMember(AllAttributeVisitor.java:95)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.util.SimplifiedVisitor.visitProgramMethod

(SimplifiedVisitor.java:91)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.ProgramMethod.accept(ProgramMethod.java:71)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.ProgramClass.methodsAccept(ProgramClass.java:504)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.visitor.AllMethodVisitor.visitProgramClass

(AllMethodVisitor.java:47)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.classfile.ClassPool.classesAccept(ClassPool.java:116)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.optimize.Optimizer.execute(Optimizer.java:500)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.ProGuard.optimize(ProGuard.java:306)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.ProGuard.execute(ProGuard.java:115)
[2013-11-28 13:20:10 - Sjh_android] 	at proguard.ProGuard.main(ProGuard.java:492)

最近用到了一个第三方推送——极光推送,debug没问题,但是混淆代码时就报这些错,然后在极光官方找到了答案:

http://docs.jpush.cn/pages/viewpage.action?pageId=7864765#Android常见问题-如何在代码时混淆忽略jpush-sdk-releasejar?

点击打开链接

如何在代码时混淆忽略 jpush-sdk-release.jar?

  • 请下载最新的proguard.jar, 并替换你Android Sdk "tools\proguard\lib\proguard.jar"
  • 在你的proguard.cfg加上代码:
-dontwarn cn.jpush.**
-keep class cn.jpush.** { *; }
  • 请使用 SDK1.3.X 及以后的版本

MIUI 系统或小米手机收不到推送通知

由于第三方 ROM 的管理软件需要用户手动操作

  • 自启动管理:默认情况下,手机开机后,只有系统默认的服务可以启动起来。除非在自启动管理界面,设置允许第三方程序自启动。
  • 网络助手:可以手动禁止已安装的第三方程序访问2G/3G和WIFI的网络和设置以后新安装程序是否允许访问2G/3G和WIFI的网络。
然后就可以按照上面官方的描述进行操作就可以了,就不会报错了,如果下载不了那个proguard.jar的话,可以在这里下载:

http://download.csdn.net/detail/msn465780/6625061  点击打开链接


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值