1

DBFlow 版本:4.2.4

错误或功能请求:错误

描述:已将库从升级4.0.0-beta14.2.4.Include 该库在我的 gradle 文件中,如下所示:-

dbFlow : "com.github.Raizlabs.DBFlow:dbflow:4.2.4", dbFlowProcessor : "com.github.Raizlabs.DBFlow:dbflow-processor:4.2.4", dbFlowCore : "com.github.Raizlabs.DBFlow:dbflow-core:4.2.4"

我的应用程序类如下;-

FlowManager.init(FlowConfig.builder(this) .addDatabaseConfig(DatabaseConfig.builder(TestDatabase.class) .databaseName("test_database") .build()) .build()); 我们的 TestDatabase.class 如下:-

@Database(version = TestDatabase.VERSION) public class TestDatabase { public static final int VERSION = 11; }

以下是堆栈跟踪:-

Caused by: com.raizlabs.android.dbflow.structure.InvalidDBConfiguration: Model object: com.xxxx.TestMember is not registered with a Database. Did you forget an annotation? at com.raizlabs.android.dbflow.config.FlowManager.getDatabaseForTable(FlowManager.java:141) at com.raizlabs.android.dbflow.config.FlowManager.getModelAdapterOrNull(FlowManager.java:469) at com.raizlabs.android.dbflow.config.FlowManager.getTableName(FlowManager.java:79) at com.raizlabs.android.dbflow.sql.language.From.getTableAlias(From.java:43) at com.raizlabs.android.dbflow.sql.language.From.getQuery(From.java:211) at com.raizlabs.android.dbflow.sql.language.Where.getQuery(Where.java:189) at com.raizlabs.android.dbflow.sql.language.BaseModelQueriable.querySingle(BaseModelQueriable.java:67) at com.raizlabs.android.dbflow.sql.language.Where.querySingle(Where.java:249)

TestMember.class 如下:-

@Table(database = TestDatabase.class, cachingEnabled = true)
public class TestMemberextends BaseModel implements Serializable {

    @Column
    public String name;

    @Column
    public String username;

    @Column
    public String phone;

    @PrimaryKey
    public String id;

    @Column
    public String pictureUrl;

    @Column
    public String thumb;

    @Column
    public String status;

    @Column
    public String members;

    @Column
    public String membersUsernames;

    @Column
    public String admin;

    @Column
    public String adminUsername;

    @Column
    public String presence;

    @Column
    public boolean isBlocked;

    @Column
    public boolean isMuted;

    @Column(defaultValue = "0")
    public int placeholder;

    public TestMember() {
    }

    public TestMember(String id) {
        this.id = id;
    }

    @Override
    public boolean equals(Object obj) {
        TestMember testMember= (TestMember) obj;
        return this.id.equals(TestMember.id);
    }

}

帮助赞赏!

4

1 回答 1

0

新版本的 dbFlow 处理的注释正在破坏、重命名类TestMember.classTestDatabase.class为我工作。

于 2018-03-21T12:51:17.660 回答