总结下objectbox数据库使用中遇到的坑和使用技巧
1.编译时xx类找不到,你必须先保证除了数据库相关代码之外的代码中没有错误,可以直接通过命令行执行看具体编译错误原因,最后rebuild下
2.objectbox-models别忘记提交版本管控,否则升级会崩溃
3.修改表结构记得加@Uid(4279138568760652606L),开发阶段自己决定是否添加,这充其量算个浅浅的坑
4.数据库监听下面代码只监听数据库中Message表变化
RxBoxStore.<Message>observable(DBManager.getInstance().getBoxStore())
.filter(new Predicate<Class>() {
@Override
public boolean test(Class aClass) throws Exception {
return aClass == Message.class;
}
})
.debounce(200, TimeUnit.MILLISECONDS)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.compose(bindUntilEvent(FragmentEvent.DESTROY))
.subscribe(new Consumer<Class>() {
@Override
public void accept(Class aClass) throws Exception {
// do something
}
});
优点:
1.快
2.操作还算简单
3.多用户切换实现起来比较简单