Използвам eclipse за разработване на приложение за Android. Когато натисна Run (зеления триъгълник), приложението работи добре. Но аз активирах proguard и приложението се срива. Използвам proguard-android.txt по подразбиране, който присъства в sdk/tools/proguard.
Имам буркан, наречен Software.jar, който има няколко класа. Един от тях (Data) е сериализуем клас.(with serialversionUID=112358L)
. Това е (вероятно) частта, която причинява грешката.
Това е регистърът на грешките (не знам защо, но се показва в жълто като предупреждение):
07-22 15:29:46.429: W/System.err(2051): java.io.InvalidClassException: software.Data; Несъвместим клас (SUID): софтуер. Данни: статичен окончателен дълъг serialVersionUID =112358L; но се очаква софтуер. Данни: статичен окончателен дълъг serialVersionUID =-4551990835091843772L; 07-22 15:29:46.433: W/System.err(2051): в java.io.ObjectInputStream.verifyAndInit(ObjectInputStream.java:2380) 07-22 15:29:46.433: W/System.err(2051) : в java.io.ObjectInputStream.readNewClassDesc(ObjectInputStream.java:1662) 07-22 15:29:46.437: W/System.err(2051): в java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:683) 07 -22 15:29:46.437: W/System.err(2051): в java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1803) 07-22 15:29:46.441: W/System.err(2051): в java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 07-22 15:29:46.441: W/System.err(2051): в java.io.ObjectInputStream.readObject(ObjectInputStream.java:2003) 07- 22 15:29:46.441: W/System.err(2051): в java.io.ObjectInputStream.readObject(ObjectInputStream.java:1960) 07-22 15:29:46.445: W/System.err(2051): в java.util.ArrayList.readObject(ArrayList.java:657) 07-22 15:29:46.445: W/System.err(2051): в java.lang.reflect.Me thod.invokeNative(Собствен метод) 07-22 15:29:46.449: W/System.err(2051): в java.lang.reflect.Method.invoke(Method.java:511) 07-22 15:29:46.449 : W/System.err(2051): в java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1354) 07-22 15:29:46.449: W/System.err(2051): в java.io.ObjectInputStream. readHierarchy(ObjectInputStream.java:1266) 07-22 15:29:46.453: W/System.err(2051): в java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1855) 07-22 15:29:46.453: W/System.err(2051): в java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 07-22 15:29:46.457: W/System.err(2051): в java.io.ObjectInputStream.readObject (ObjectInputStream.java:2003) 07-22 15:29:46.457: W/System.err(2051): в java.io.ObjectInputStream.readObject(ObjectInputStream.java:1960) 07-22 15:29:46.457: W /System.err(2051): в com.mainpackage.FullGenPhysics.a(Неизвестен източник) 07-22 15:29:46.457: W/System.err(2051): в com.main package.de.run(Неизвестен източник)
и това са червените линии (грешка в етикета)
07-22 15:29:46.465: E/AndroidRuntime(2051): ФАТАЛНО ИЗКЛЮЧЕНИЕ: Thread-161 07-22 15:29:46.465: E/AndroidRuntime(2051): java.lang.NullPointerException 07-22 15:29: 46.465: E/AndroidRuntime(2051): в software.Gen_Phy.a(Неизвестен източник) 07-22 15:29:46.465: E/AndroidRuntime(2051): в software.Gen_Phy.a(Неизвестен източник) 07-22 15: 29:46.465: E/AndroidRuntime(2051): в software.Gen_Phy.(Неизвестен източник) 07-22 15:29:46.465: E/AndroidRuntime(2051): в com.mainpackage.FullGenPhysics.a(Неизвестен източник) 07- 22 15:29:46.465: E/AndroidRuntime(2051): в com.mainpackage.de.run(Неизвестен източник) 07-22 15:29:46.465: W/ActivityManager(333): Принудително завършване на дейността com.mainpackage/. FullGenPhysics 07-22 15:29:46.525: E/SocketStream(112): readFully чакаше 403440 байта, получи 49152 07-22 15:29:46.525: E/SocketStream(112): readFully чакаше 354288 байта, получи 16384 07-22 15:29:46.529: E/SocketStream(112): readFully чакаше 337904 байта, получи 1624 07-22 1 5:29:46.529: E/SocketStream(112): readFully чакаше 336280 байта, получи 49152 07-22 15:29:46.533: E/SocketStream(112): readFully чакаше 287128 байта, получи 16384 07-22 15:29:46.533: E/SocketStream(112): readFully чакаше 270744 байта, получи 1624 07-22 15:29:46.537: E/SocketStream(112): readFully чакаше 269120 байта, получи 49152 07-22 15:29:46.537: E/SocketStream(112): readFully чакаше 219968 байта, получи 16384 07-22 15:29:46.537: E/SocketStream(112): readFully чакаше 203584 байта, получи 1624 07-22 15:29:46.541: E/SocketStream(112): readFully чакаше 201960 байта, получи 49152 07-22 15:29:46.541: E/SocketStream(112): readFully чакаше 152808 байта, получи 16384 07-22 15:29:46.541: E/SocketStream(112): readFully чакаше 136424 байта, получи 1624 07-22 15:29:46.545: E/SocketStream(112): readFully чакаше 134800 байта, получи 49152 07-22 15:29:46.545: E/SocketStream(112): readFully чакаше 85648 байта, получи 16384 07-22 15:29:46.549: E/SocketStream(112): readFully чакаше 69264 байта, получи 1624 07-22 15:29:46.549: E/SocketStream(112): readFully чакаше 67640 байта, получи 49152 07-22 15:29:46.549: E/SocketStream(112): readFully чакаше 18488 байта, получи 16384
Смешното е, че имам system.out в един от класовете на software.jar. Това се отпечатва.
Опитах да добавя и -libraryjars C:\Users\Harsh\git\marks++\Marks++\Software.jar
-keep class Software.**
към вече споменатия .txt файл
Къде греша?
РЕДАКТИРАНЕ
07-22 16:10:54.957: W/System.err(2233): java.lang.ClassNotFoundException: software.Data 07-22 16:10:54.961: W/System.err(2233): at java.lang.Class.classForName(Native Method) 07-22 16:10:54.961: W/System.err(2233): at java.lang.Class.forName(Class.java:217) 07-22 16:10:54.965: W/System.err(2233): at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:2301) 07-22 16:10:54.965: W/System.err(2233): at java.io.ObjectInputStream.readNewClassDesc(ObjectInputStream.java:1660) 07-22 16:10:54.965: W/System.err(2233): at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:683) 07-22 16:10:54.969: W/System.err(2233): at java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1803) 07-22 16:10:54.969: W/System.err(2233): at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 07-22 16:10:54.973: W/System.err(2233): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2003) 07-22 16:10:54.973: W/System.err(2233): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:1960) 07-22 16:10:54.973: W/System.err(2233): at java.util.ArrayList.readObject(ArrayList.java:657) 07-22 16:10:54.973: W/System.err(2233): at java.lang.reflect.Method.invokeNative(Native Method) 07-22 16:10:54.977: W/System.err(2233): at java.lang.reflect.Method.invoke(Method.java:511) 07-22 16:10:54.977: W/System.err(2233): at java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1354) 07-22 16:10:54.977: W/System.err(2233): at java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266) 07-22 16:10:54.977: W/System.err(2233): at java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1855) 07-22 16:10:54.977: W/System.err(2233): at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 07-22 16:10:54.977: W/System.err(2233): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2003) 07-22 16:10:54.977: W/System.err(2233): at java.io.ObjectInputStream.readObject(ObjectInputStream.java:1960) 07-22 16:10:54.977: W/System.err(2233): at com.mainpackage.FullGenPhysics.a(Unknown Source) 07-22 16:10:54.977: W/System.err(2233): at com.mainpackage.de.run(Unknown Source) 07-22 16:10:54.981: W/System.err(2233): Caused by: java.lang.NoClassDefFoundError: software/Data 07-22 16:10:54.981: W/System.err(2233): ... 20 more 07-22 16:10:54.981: W/System.err(2233): Caused by: java.lang.ClassNotFoundException: software.Data 07-22 16:10:54.981: W/System.err(2233): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 07-22 16:10:54.981: W/System.err(2233): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 07-22 16:10:54.981: W/System.err(2233): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 07-22 16:10:54.985: W/System.err(2233): ... 20 more