草庐IT

Android Realm - 使用 Intent 传递 Realm 对象

我想将Realm对象从一个Activity传递到另一个Activity。例如Intentintent=newIntent(MainActivity.this,Second.class);intent.putExtra("Student",studentObj);//studentObjisarealmobjectstartActivity(intent);并从第二个Activity中接收它Intenti=getIntent();student=(Student)i.getSerializableExtra("Student");但这会导致空指针异常。java.lang.RuntimeE

android - 如何将 Realm 安装为 gradle 依赖项?

我对Realm完全陌生。我想在我的android项目中使用realmdb。我通过了官方Realmdocumentation.我需要在我的android项目中设置Realm。为此,我将gradle依赖项添加为buildscript{repositories{jcenter()}dependencies{classpath"io.realm:realm-gradle-plugin:0.88.2"}}applyplugin:'realm-android'这是他们在文档中给出的内容。但这对我不起作用。它给出错误提示Pluginwithid'realm-android'notfound。这是我的

android - 无法从 Realm 对象检索字段值,调试器中的值为空

我的RealmObject值似乎被RealmProxy类隐藏了,但可以从代理类中设置。如您所见,我的模型非常简单。publicclassGroupRealmextendsRealmObject{@PrimaryKeypublicStringid;@IndexpublicStringname;publicStringimageUrl;publicintorder;publicGroupRealmparent;publicRealmListchildren;publicRealmListcontents;}这就是我设置值的方式(db是一个有效的Realm,并且一切都在一个提交良好的事务中)

android - 将值设置为 Realm 对象

我有以下类(class)publicclassStudentextendsRealmObject{privateintstudentID;privateStringstudentName;//gettersandsettershere}然后我尝试为已经创建的学生对象设置一个值student.setStudentName("Peter");然后我得到以下错误java.lang.IllegalStateException:Mutablemethodcallduringreadtransaction.为了克服这个问题,我必须按如下方式进行Realmrealm=Realm.getInstanc

android - 在 Realm 中存储一长串对象的最有效方法是什么?

我正在尝试将Realm与Snappydb进行比较(Thisismyrepo对于那些想查看基准测试的人)。我想我的方法是错误的,因为与Sanppydb相比,存储到数据库的时间在Realm中花费了超长的时间。基准测试显示以下结果。如图所示,Realm比Snappydb慢100-200倍左右。我所做的是先创建10,000个对象,然后将它们存储到数据库中。因此,在我的代码中,我以这种方式存储了一个Booking对象(有一个迭代10,000次的for循环):publicvoidstoreBooking(finalBookingbooking){mRealm.executeTransaction(

android - 将数据预填充到 Assets 中的 Realm ?

通常我将Realm用作:RealmConfigurationconfig=newRealmConfiguration.Builder(applicationContext).deleteRealmIfMigrationNeeded().build();如何将包含数据的数据库添加到项目的Assets文件夹并读取它? 最佳答案 自RealmJava0.91.0以来,RealmConfiguration上有一个assetFile(String)选项,它会自动从Assets中复制文件并在需要时使用该文件(例如如果Realm是第一次打开或由于

android - 按日期排序 - Realm (Android)

我的表A中有一个名为last_message_time的列/字段,类型为Date。假设查询表A返回x个结果。我如何根据last_message_time列中的日期对这些结果进行排序。例如,在SQLite中我们有ORDERBYdate(dateColumn) 最佳答案 RealmResultssorted=realm.where(A.class).findAllSorted("last_message_time",Sort.ASCENDING);编辑:自Realm4.3.0以来,首选以下内容:RealmResultssorted=re

android - 从 Realm 分离 RealmObject/将托管 RealmObject 转换为非托管对象

我想从它的Realm中“分离”一个RealmObject,这意味着我希望能够从一个方法中返回一个RealmObject并能够在我关闭Realm实例后使用它。像这样:publicPersongetPersonWithId(finalContextcontext,finalStringpersonId){Realmrealm=Realm.getInstance(context);Personperson=realm.where.....;realm.close();returnperson;}目前getPersonWithId(mContext,personId).getName()将按预

android - Realm Android - 如何将 RealmResults 转换为对象数组?

我有一个对象publicclassArticleListextendsRealmObject{@PrimaryKeyprivateStringid;privateStringtitle;privateStringsubtitle;privateStringimage;privateStringcategory;}我想做的是从Realm获取结果并将结果转换为ArticleList[]通过使用获取我做的RealmResultsresults=realm.where(ArticleList.class).equalTo("category","CategoryName").findAll()

android - Realm 为我的 apk 添加额外的大小

我的apk的初始大小在添加Realm库之前是2.3MB,添加相同后,apk大小增加到10.61MB,是否可以减小大小,如果可以怎么办?如果不是那么请推荐一个替代Realm 最佳答案 您可以使用abisplits来减小APK的大小。通常(没有拆分)它包含支持几乎所有架构(ARM7、ARMv7、ARM64、x86、MIPS)的文件,这就是它太大的原因。有了abisplits,androidstudio会为每个架构生成APK,每个APK不会包含任何其他架构的文件只需在gradle文件中添加以下部分。还要检查这个Realmdocumenta