2016-04-26 14 views
0

"asm-4.0.jar", "org.objectweb.asm" wenn diese .jar enthalten ist, bekomme ich diesen Fehler, während Gebäude:Ein Glas schraubt sich während Proguard Verschleierung, was soll ich tun?

AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: com.android.dx.rop.cst.CstMethodRef cannot be cast to com.android.dx.rop.cst.CstInterfaceMethodRef","sources":[{}]} 
AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: com.android.dx.rop.cst.CstMethodRef cannot be cast to com.android.dx.rop.cst.CstInterfaceMethodRef","sources":[{}]} 
AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: com.android.dx.rop.cst.CstMethodRef cannot be cast to com.android.dx.rop.cst.CstInterfaceMethodRef","sources":[{}]} 
AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: com.android.dx.rop.cst.CstMethodRef cannot be cast to com.android.dx.rop.cst.CstInterfaceMethodRef","sources":[{}]} 
AGPBI: {"kind":"error","text":"4 errors; aborting","sources":[{}]} 

Ein Teil von Proguard config:

#-libraryjars libs/asm-4.0.jar 
-keep class !org.objectweb.asm.** { *; } 
-dontwarn org.objectweb.asm.** 

Voll proguard config: http://pastebin.com/mxXK4WvY

-dontobfuscate

Diese Zeile macht Progard-Arbeit, aber ich brauche Verschleierung.

Was soll ich tun? Dieses Krug wird für Kryonet benötigt, mein ganzes Spiel ist darauf aufgebaut.

+2

Uhm, dass sieht falsch aus. – rekire

+0

@rekire, aber wenn ich es entferne, ändert sich nichts, immer noch nicht –

+1

Ich habe gerade Ihre Proguard-Datei überprüft. Es ist der längste, den ich je gesehen habe. Sind Sie sicher, dass genau diese vier Zeilen das Problem verursachen? Sie können mit [jadx] (https://github.com/skylot/jadx) den Inhalt Ihrer apk-Datei überprüfen, um zu überprüfen, welche Klassen entfernt wurden. – rekire

Antwort

0

Ich glaube, ich es fest, indem sie es wie diese machen: "!"

-keep class org.objectweb.asm.** { *; } 
-keepclassmembers class org.objectweb.asm.** { *; } 
-keepclassmembernames class org.objectweb.asm.** { *; } 
-dontwarn org.objectweb.asm.**