android - 如何在 Activeandroid 中禁用模型扫描

标签 android database activeandroid

我想使用 AA_MODEL 标签在 AndroidManifest.xml 文件中定义我的模型类并禁用自动搜索。因为目前我在应用程序启动时遇到类似以下错误:

Couldn't create class.
    java.lang.ClassNotFoundException: android.support.v4.print.PrintHelperKitkat$1
            at java.lang.Class.classForName(Native Method)
            at java.lang.Class.forName(Class.java:204)
            at com.activeandroid.ModelInfo.scanForModelClasses(Unknown Source)
            at com.activeandroid.ModelInfo.scanForModel(Unknown Source)
            at com.activeandroid.ModelInfo.<init>(Unknown Source)
            at com.activeandroid.Cache.initialize(Unknown Source)
            at com.activeandroid.ActiveAndroid.initialize(Unknown Source)
            at com.activeandroid.ActiveAndroid.initialize(Unknown Source)
            at com.company.myapp.app.MyAppApplication.onCreate(Unknown Source)
            at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1024)
            at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4684)
            at android.app.ActivityThread.access$1400(ActivityThread.java:159)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1376)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:176)
            at android.app.ActivityThread.main(ActivityThread.java:5419)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:525)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)
            at dalvik.system.NativeStart.main(Native Method)

如何正确地做到这一点?你能给我举个定义明确的 AA_MODEL 标签的例子吗?

最佳答案

您可以在 Application 对象中定义模型。这会禁用模型自动搜索。

public class ShantApplication extends Application {

@Override
public void onCreate() {
    super.onCreate();

    initializeDB();
}

protected void initializeDB() {
    Configuration.Builder configurationBuilder = new Configuration.Builder(this);
    configurationBuilder.addModelClasses(Test.class);
    configurationBuilder.addModelClasses(ShoppingList.class);
    configurationBuilder.addModelClasses(ShoppingListItem.class);
    configurationBuilder.addModelClasses(ArticleInfoModel.class);

    ActiveAndroid.initialize(configurationBuilder.create());
}

关于android - 如何在 Activeandroid 中禁用模型扫描,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23907037/

相关文章:

Android Eclipse 插件 "reset adb"给出 "Adb connection Error:EOF"错误,没有阻塞,但它是什么?

android - 将文件保存在移动用户无法访问的android位置

database - 如何在没有热分区的情况下使用 Amazon DynamoDB 为论坛建模?

android - 如何知道数据库中的数据更改的那一刻(ActiveAndroid ORM)?

java - ActiveAndroid 使用现有数据库

android - 如何将列添加到 Activity 的 android 数据库表中?

android - PhoneGap FileTransfer.download 期望的路径与 FileSystem 提供的路径不同

c# - 跨平台的PCL孤立存储解决方案?

mysql - 查询未从数据库输出所有相关结果

android - Android重复值更新