解决混淆报错问题-打包签名出现问题的解决方法
来源:互联网 发布:魅族 智能手表mix 知乎 编辑:程序博客网 时间:2024/06/10 06:06
这个问题比较烦人,主要是因为使用了激光推送的功能,然后打包文件发布apk的时候出现了问题,导致了以下的一大堆的错误,不过大家勿急,有解决办法。
[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 = [()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.()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 = [()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.()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.()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 = [()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.()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 = [()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.()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.()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)
出现上面的错误是因为工程中使用了极光推送的功能jar包,打包出现了问题。
下面给出解决法案:
如何在代码时混淆忽略 jpush-sdk-release.jar?
1、请下载最新的proguard.jar,
并替换你Android Sdk “tools\proguard\lib\proguard.jar”
2、在你的proguard.cfg加上代码:
-dontwarn cn.jpush.**
-keep class cn.jpush.* { ; }
3、请使用 SDK1.3.X 及以后的版本
按照上面的做法即可解决问题。
第一步下载proguard.jar,下面我给出我的该jar包的下载地址,即可解决问题:下载地址proguard.jar
下载之后到Android Sdk “tools\proguard\lib\proguard.jar”目录下把同名的文件替换掉即可。
第二部是代码混淆,在工程文件的根目录下面的proguard.cfg文件中添加上面的那两句代码即可。如果工程根目录下面没有这个proguard.cfg文件,那就新建一个同名的文件即可。
按照上面的做法完美解决问题。记录下来,以后可能用得着,如果帮你解决了问题,记得给个好评呀!!!^_^【握手】
- 解决混淆报错问题-打包签名出现问题的解决方法
- 使用Mac版Eclipse开发Android程序混淆签名打包的一个报错解决方法
- Afinal 混淆打包报错的解决方法
- android 打包混淆报错问题
- Android Studio 打包混淆出现的问题
- 混淆编译ProGuard打包时候报错的问题
- Eclipse打包混淆时出现的问题及解决办法
- Android:混淆打包后出现的各种问题
- android签名打包出现异常的解决方法。
- android 签名打包和出现的问题transformClassesAndResourcesWithProguardForRelease
- 终极的代码混淆脚本,解决所有因代码混淆无法打签名包的问题
- Gson的混淆打包问题
- 解决Xcode 命令行打包时证书签名不成功的问题
- 解决极光推送Jpush混淆报错问题
- as开启混淆时自己出现的问题,及解决
- 解决Android Studio配置签名出现的问题
- eventbus打包混淆问题
- butterknife 打包混淆问题
- import 用法与包的导入
- csu oj K swap operation 模拟
- 【NYIST】暑假训练赛 (一)-----Problem B
- 8.12java学习篇
- Path Sum II
- 解决混淆报错问题-打包签名出现问题的解决方法
- weka连接mysql数据库及修改weka后打包问题汇总
- HDU 4585 Shaolin(treap模板题)
- java-反射 基础
- HDU 5371Hotaru's problem Manacher+线段树
- 轻松替换指定文件夹里的所有内容匹配的文件!
- ASP.NET MVC 音乐商店完整项目示例
- pip的安装与使用
- NSIS 简易教程(四)