计算堆栈大小时出现Android、gradle、Proguard错误:



在我的项目中升级支持v13-lib和google_play后,我的proguard出现了问题。我一直在四处搜索,但没有找到这个错误的解决方案:

 Unexpected error while computing stack sizes:
 Class       = [com/google/android/gms/tagmanager/as]
 Method      = [run()V]
 Exception   = [java.lang.IllegalArgumentException] (Stack size becomes  negative after instruction [35] pop in [com/google/android/gms/tagmanager/as.run()V])
:xxxxx:proguardReleaseclean FAILED

proguard版本为4.7

在建筑中.gradle:

dependencies {
    compile 'com.android.support:support-v13:22.0.+'
    compile 'com.google.android.gms:play-services-maps:6.5.87'
    compile files('libs/gson-2.2.4.jar')
}
android {
    compileSdkVersion 19
    buildToolsVersion '20.0.0'
}

在proguard Cfg中(添加-dontwarn后,支持v4和gms)

-keep class * extends java.util.ListResourceBundle {
    protected Object[][] getContents();
}
-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
    public static final *** NULL;
}
-keepnames @com.google.android.gms.common.annotation.KeepName class *
-keepclassmembernames class * {
    @com.google.android.gms.common.annotation.KeepName *;
}
-keepnames class * implements android.os.Parcelable {
    public static final ** CREATOR;
}
-dontwarn android.support.v4.**
-dontwarn android.support.v13.**
-dontwarn com.google.android.gms.**
-keep class android.support.v13.app.** { *; }
-keep interface android.support.v13.app.** { *; }
-keep class android.support.v4.app.** { *; }
-keep interface android.support.v4.app.** { *; }

我确实尝试了很多事情,但都没有成功。

任何提示都会很棒!!感谢

尝试在progard中添加"-dontoptimize"。

如果不起作用,添加如下代码:

-dontshrink
-dontoptimize
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontskipnonpubliclibraryclassmembers
-dontpreverify

最新更新