Я получаю эту ошибку -java.lang.NoClassDefFoundError: roboguice.activity.SherlockAccountAuthenticatorActivity с ActiveAndroid в Android 5.0
java.lang.NoClassDefFoundError: roboguice.activity.SherlockAccountAuthenticatorActivity
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:308)
at com.activeandroid.ModelInfo.scanForModelClasses(ModelInfo.java:187)
at com.activeandroid.ModelInfo.scanForModel(ModelInfo.java:152)
at com.activeandroid.ModelInfo.<init>(ModelInfo.java:63)
at com.activeandroid.Cache.initialize(Cache.java:66)
at com.activeandroid.ActiveAndroid.initialize(ActiveAndroid.java:44)
at com.activeandroid.ActiveAndroid.initialize(ActiveAndroid.java:34)
at com.activeandroid.ActiveAndroid.initialize(ActiveAndroid.java:30)
at com.activeandroid.app.Application.onCreate(Application.java:25)
at com.dvor.androidapp.Application.TabletApplication.onCreate(TabletApplication.java:22)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1011)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4518)
at android.app.ActivityThread.access$1500(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1339)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5221)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
В Android версии 5.0, я использую RoboGuice и ActiveAndroid и класс приложений расширяет ком .activeandroid.app.Application, есть ли другой способ устранить эту проблему, кроме расширения обычного класса приложения и добавления классов модели вручную (таким образом, каждый класс модели должен быть добавлен), как описано (https://github.com/pardom/ActiveAndroid/issues/291):
Configuration.Builder configurationBuilder = new Configuration.Builder(this);
configurationBuilder.addModelClass(Test.class);
configurationBuilder.addModelClass(Test2.class);
ActiveAndroid.initialize(configurationBuilder.create());
Вы можете попробовать http://www.rushorm.com/ он не требует расширения класса Application. Аналогичным образом работает иначе. –
@Stuart Campbell Выглядит интересно, но я не могу изменить ORM. –