草庐IT

android - Realm 打开/关闭实践

打开一个Realm有多糟糕在应用程序onCreate中创建实例并在整个Application生命周期中保持打开状态,仅在应用程序被终止时才关闭它?(假设我不会从另一个线程调用它) 最佳答案 这样做是绝对安全的,但是如果您在应用程序进入后台时不关闭Realm,则您的应用程序在需要回收资源时被系统杀死的可能性更高。您还可以在此处阅读有关控制生命周期的信息:https://realm.io/docs/java/latest/#controlling-the-lifecycle-of-realm-instances

java - 如何避免 Realm 重写/覆盖子对象?

我有异议publicclassRProfileextendsRealmObject{@PrimaryKey@RequiredStringid;Stringtitle;Stringdescription;}还有一个对象publicclassRChatMessageextendsRealmObject{@PrimaryKey@RequiredStringid;Stringmessage;RProfilesender;}从服务器获取我的个人资料{"id":"131231","title":"我的个人资料","description","任何描述"}并将其写入Realm:publicvoids

android - Json 字符串到 Realm 对象,最快的方法

我有以下在AsyncTask中运行的代码。它运行良好,但以下几行似乎使它在使用时慢了3-5秒。有没有更快的方法将我的json字符串转换为realm?//Loadthelocalmodeldata.params[0].toString()isajsonstringloadedfromSharedPreferences.JsonParserjsonParser=newJsonParser();JsonObjecto=(JsonObject)jsonParser.parse(params[0].toString());RealmrealmThread=Realm.getInstance(vi

android - Realm 查找查询结果为空对象

这个问题在这里已经有了答案:Cannotretrievefieldvaluesfromrealmobject,valuesarenullindebugger(5个答案)关闭5年前。当对对象进行查找查询时,我得到“空”对象(非空,但未填充)。但是,在调试器中,我可以在对象描述中看到对象的数据(见下文)。我还使用RealmBrowser验证了数据是否存在。我尝试了不同的查找查询、使用过滤条件查询、使用相同的Realm对象进行插入/查询、使用不同的Realm对象进行插入/查询、刷新Realm等。如果我在RealmObject中记录字段,我会看到打印出正确的数据。但是,我正在尝试根据https

java - Getter 不关联任何字段 - Realm

我刚开始使用Realm库并试图在我的android应用程序中实现它。刚被困在我试图根据我的json响应中特定元素的View类型来划分我的listview的时候。我已尝试使用recyclerview实现这些部分,但问题是我有2种View类型,并且为这些View类型添加header导致出现问题。由于Realm不支持RecyclerAdapter,我创建了一个实现,它将使用支持RecyclerView的自定义适配器。因此,尽管我将使用ListView并尝试为每个对象类型使用一个简单的接口(interface)来确定类型,然后根据组的位置插入header。出于某种原因,Realm不允许我在扩展

android - 以后是否可以在 Realm 中更改主键..?

我在本地设置了一个临时主键并将对象保存到realm,稍后服务器为该对象分配了一个唯一键,然后我想更新该对象的主键。那么是否可以为对象重新分配一个主键呢?当我们将主键重新分配给对象时会发生什么?它会用旧的主键保存对象吗? 最佳答案 在Realm1.2.0之前可以更改主键的值。自Realm2.0.x起禁止更改主键值。 关于android-以后是否可以在Realm中更改主键..?,我们在StackOverflow上找到一个类似的问题: https://stackov

android - 如何从 Realm 对象中删除所有记录而不在android中获取它?

我有1个Realm对象和其中的一些记录。我想在单个事务中使对象具有空记录而不获取它。RealmResultsmovies=realm.where(Movie.class).findAll();movies.deleteAllFromRealm();现在我们有这样的东西,但我想要像下面这样没有第一行的东西。realm.deleteAll(Movies.class);有这样的吗?我不知道,也许删除会花费更少的时间。我只是担心删除所需的时间。在我的应用程序中,我有10个对象拥有超过200,000条记录。 最佳答案 realm.execut

android - 如何在 Android Realm 迁移的新类上添加现有对象

我有一个正在生产的应用程序,因此必须使用RealmMigration应用更改我查看了文档和这个example但我没有找到如何执行以下操作。在当前版本中,我有Foo类型的项目有一个boolean属性名为favorite.现在我想概括一下并创建用户自定义Foo列表,因此用户将能够创建他们的自定义列表并添加任意数量的对象。我想用一个名为UserFooList的新类来实现它基本上是name和一个RealmList元素。在迁移过程中,我正在创建这个带有字段的新类。这很简单,但困难的部分来了:我想添加所有以前的Foo标有favorite的项目到一个新的UserFooList然后删除现在未使用的Fo

android - Realm 在移动设备中存储数据在哪里?

我开始寻找SQLite的替代品。我找到了境界。我知道它更快更安全。但我想知道realm在移动设备中存储数据的位置在哪里?它会增加应用程序的数据大小吗?像sqlite我们能否以应用用户的身份查看数据?喜欢sqlite有什么建议吗? 最佳答案 1)DoesitincreaseApp'sdatasize?likesqlite是的,它增加了大小。它将数据存储在数据文件夹中。2)Canweseethedataastheappuser?LikesqliteRealm浏览器目前只能在MacOSX上使用。我们正在开发Windows和Linux版本。

android - 从 Android 中的另一个线程进行 Retrofit 和 Realm 访问

我将Realm用于数据库服务,将Retrofit用于服务器服务。我想从Realm获取数据并将其作为对象传递给Retrofit,但出现以下错误:retrofit.RetrofitError:Realmaccessfromincorrectthread.Realmobjectscanonlybeaccessedonthethreadtheywherecreated.05-2512:58:36.418W/System.err﹕atretrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:400)05-2512:58:36.