0

例如,我想在 RMD 中进行 CURD,然后同步到 ROS。
当它离线时,我可以在 RMD 中获取数据。
以及如何将整个 RDM 同步到 ROS?
这是我的代码:
SearchModel

RealmUtils.getInstance()
            .where(Book.class).equalTo("isbn13", isbn)
            .findAllAsync().<Book>asObservable()
            .subscribe(books -> apiListener.onSuccess(books.size() > 0),
                    throwable -> apiListener.onFailure(throwable.getMessage()));

插入模型

RealmUtils.getInstance().asObservable()
            .subscribe(realm ->
            {
                Book book = realm.createObject(Book.class);
                book.isbn13 = bookInfoResponse.getIsbn13();
                book.title = bookInfoResponse.getTitle();
                book.subtitle = bookInfoResponse.getSubtitle();
                book.publisher = bookInfoResponse.getPublisher();
                book.authors = bookInfoResponse.getAuthors();
                book.translators = bookInfoResponse.getTranslators();
                book.pubdate = bookInfoResponse.getPubdate();
                book.pages = bookInfoResponse.getPages();
                book.origin_title = bookInfoResponse.getOrigin_title();
                book.image = bookInfoResponse.getImages().getLarge();
                book.summary = bookInfoResponse.getSummary();
                book.infoString = bookInfoResponse.getInfoString();

                apiListener.onSuccess(true);
            }, throwable -> apiListener.onFailure(throwable.getMessage()));

删除模型

RealmUtils.getInstance()
            .where(Book.class).equalTo("isbn13", isbn)
            .findAllAsync().<Book>asObservable()
            .subscribe(books ->
            {
                books.deleteAllFromRealm();
                apiListener.onSuccess(false);
            }, throwable -> apiListener.onFailure(throwable.getMessage()));

这会导致java.lang.IllegalArgumentException: Configurations cannot be different if used to open the same file. 我该怎么办?

4

0 回答 0