80,349
社区成员
发帖
与我相关
我的任务
分享
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
#-ignorewarnings
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-keepattributes *Annotation*
-keepattributes Signature
-libraryjars libs/android-support-v4.jar
-libraryjars libs/commons-net-3.2.jar
-libraryjars libs/open_sdk.jar
-libraryjars libs/ormlite-android-4.42.jar
-libraryjars libs/umeng_sdk.jar
-libraryjars libs/ormlite-core-4.42.jar
-keep public class * extends android.app.Fragment
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class * extends android.support.v4.**
#-keep public class * extends org.apache.commons.net.**
#-keep public class * extends com.tencent.**
#-keep public class * extends com.umeng.**
#-keep public class * extends com.umeng.analytics.**
#-keep public class * extends com.umeng.common.**
#-keep public class * extends com.umeng.newxp.**
#-keep public class * extends com.j256.ormlite.**
#-keep public class * extends com.j256.ormlite.android.**
#-keep public class * extends com.j256.ormlite.field.**
#-keep public class * extends com.j256.ormlite.stmt.**
-keep public class * extends com.j256.ormlite.android.apptools.OrmLiteSqliteOpenHelper
-keep public class * extends com.j256.ormlite.android.apptools.OpenHelperManager
-keep class com.android.vending.licensing.ILicensingService
-keep class android.support.v4.** { *; }
-keep class org.apache.commons.net.** { *; }
-keep class com.tencent.** { *; }
-keep class com.umeng.** { *; }
-keep class com.umeng.analytics.** { *; }
-keep class com.umeng.common.** { *; }
-keep class com.umeng.newxp.** { *; }
-keep class com.j256.ormlite.** { *; }
-keep class com.j256.ormlite.android.** { *; }
-keep class com.j256.ormlite.field.** { *; }
-keep class com.j256.ormlite.stmt.** { *; }
-dontwarn android.support.v4.**
-dontwarn org.apache.commons.net.**
-dontwarn com.tencent.**
-dontwarn com.umeng.**
-dontwarn com.umeng.analytics.**
-dontwarn com.umeng.common.**
-dontwarn com.umeng.newxp.**
-dontwarn com.j256.ormlite.**
-dontwarn com.j256.ormlite.android.**
-dontwarn com.j256.ormlite.field.**
-dontwarn com.j256.ormlite.stmt.**
-keepclasseswithmembernames class * {
native <methods>;
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
04-18 18:32:16.619: E/AndroidRuntime(8902): FATAL EXCEPTION: main
04-18 18:32:16.619: E/AndroidRuntime(8902): java.lang.RuntimeException: Unable to create application com.ishow.funnymap.FunnyApplication: java.lang.IllegalStateException: Could not find constructor that hast just a (Context) argument for helper class class com.ishow.funnymap.database.DatabaseHelper
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4118)
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.app.ActivityThread.access$1300(ActivityThread.java:134)
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1285)
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.os.Handler.dispatchMessage(Handler.java:99)
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.os.Looper.loop(Looper.java:154)
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.app.ActivityThread.main(ActivityThread.java:4624)
04-18 18:32:16.619: E/AndroidRuntime(8902): at java.lang.reflect.Method.invokeNative(Native Method)
04-18 18:32:16.619: E/AndroidRuntime(8902): at java.lang.reflect.Method.invoke(Method.java:511)
04-18 18:32:16.619: E/AndroidRuntime(8902): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:809)
04-18 18:32:16.619: E/AndroidRuntime(8902): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:576)
04-18 18:32:16.619: E/AndroidRuntime(8902): at dalvik.system.NativeStart.main(Native Method)
04-18 18:32:16.619: E/AndroidRuntime(8902): Caused by: java.lang.IllegalStateException: Could not find constructor that hast just a (Context) argument for helper class class com.ishow.funnymap.database.DatabaseHelper
04-18 18:32:16.619: E/AndroidRuntime(8902): at com.j256.ormlite.android.apptools.OpenHelperManager.constructHelper(Unknown Source)
04-18 18:32:16.619: E/AndroidRuntime(8902): at com.j256.ormlite.android.apptools.OpenHelperManager.loadHelper(Unknown Source)
04-18 18:32:16.619: E/AndroidRuntime(8902): at com.j256.ormlite.android.apptools.OpenHelperManager.getHelper(Unknown Source)
04-18 18:32:16.619: E/AndroidRuntime(8902): at com.ishow.funnymap.database.DatabaseHelper.a(Unknown Source)
04-18 18:32:16.619: E/AndroidRuntime(8902): at com.ishow.funnymap.FunnyApplication.onCreate(Unknown Source)
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
04-18 18:32:16.619: E/AndroidRuntime(8902): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4115)
04-18 18:32:16.619: E/AndroidRuntime(8902): ... 10 more
04-18 18:32:16.619: E/AndroidRuntime(8902): Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context]
04-18 18:32:16.619: E/AndroidRuntime(8902): at java.lang.Class.getConstructorOrMethod(Class.java:460)
04-18 18:32:16.619: E/AndroidRuntime(8902): at java.lang.Class.getConstructor(Class.java:431)
04-18 18:32:16.619: E/AndroidRuntime(8902): ... 17 more
-keepattributes Signature
来避免混淆泛型
并且看错误应该 应该是隐式构造被清理掉了!
我没有好的解决办法!
您说的 反射不混淆 , 具体应该怎么操作呢?
Caused by: java.lang.IllegalStateException: Could not find constructor that hast just a (Context) argument for helper class class com.ishow.funnymap.database.DatabaseHelper
Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context]
// 看错误信息 应该是没有显示调用的构造被清空了!
public class DatabaseHelper extends OrmLiteSqliteOpenHelper {
private static final String DATABASE_NAME = "safford.db";
private static final int DATABASE_VERSION = 11;
private final String TAG = "DatabaseHelper";
private Dao<ConnotationEssay, Long> connotationEssayDao;
private Dao<Post, Long> postDao;
private static volatile DatabaseHelper instance;
public static void init(Context context) {
if (instance == null) {
instance = (DatabaseHelper) OpenHelperManager.getHelper(context,
DatabaseHelper.class);
// call this to make sure database be created/updated when init.
instance.getReadableDatabase();
}
}
....
}