标签: realm

让GSON&Realm发挥出色

我正在尝试使用Realm + GSON.如果他们能够很好地合作,那将是一场天国的比赛.

但是,当我使用"extends RealmObject"扩展我的模型对象时,我得到了这个:

10-08 17:00:19.578  12492-12492/appwise.be.gsontestproject E/AndroidRuntime? FATAL EXCEPTION: main
    Process: appwise.be.gsontestproject, PID: 12492
    java.lang.StackOverflowError
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:372)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:376)
            at com.google.gson.internal.$Gson$Types.resolve($Gson$Types.java:381)
            at …
Run Code Online (Sandbox Code Playgroud)

android realm gson

15
推荐指数
1
解决办法
4721
查看次数

你如何检查领域实例是否已经关闭?

我正在使用Realm for Android来存储一些数据.当用户按下注销按钮时,我想清除整个Realm数据库.为此,我有以下代码片段:

realm.close();
realm.deleteRealmFile(this);
goToLoginActivity();
Run Code Online (Sandbox Code Playgroud)

现在问题出在我的onResume函数中.我收到以下异常:

引起:java.lang.IllegalStateException:此Realm实例已被关闭,使其无法使用.

我的onResume代码如下:

@Override
protected void onResume() {
    super.onResume();

    // I'm trying to check if the realm is closed; this does not work
    if (realm == null) {
        realm = Realm.getInstance(this);
    }

    // Do query using realm
}
Run Code Online (Sandbox Code Playgroud)

如何查看领域对象是否已经关闭?或者,是否有更好的方法来清除数据库而不是删除领域文件?

-

编辑:刚刚看到如何轻松删除Realm for iOS中的所有对象.关于何时deleteAllObjects API可用于Android的任何消息?在撰写本文时,Android的版本为0.80.0,API在iOS中以0.87.0的形式提供.

java android realm

15
推荐指数
2
解决办法
1万
查看次数

领域 - 添加包含初始数据的文件到项目(iOS/Swift)

我正在使用swift开发iOS应用程序,并选择Realm作为它的数据库解决方案.我使用realm docs中的write/add函数在AppDelegate中编写了默认数据,它工作得很好.所以在第一次启动后,我有一个带有初始数据的*.realm文件.在Realm文档中,我找到了一个名为"使用应用程序捆绑领域"的部分,我将*.realm文件添加到项目中并在编写时构建阶段.

我无法理解接下来应该做什么(以及压缩*.realm文件的部分内容).我试图理解迁移示例中的代码,但我不太了解Obj-C.

请尽可能明确地将带有初始数据的*.realm文件添加到swift ios项目中,并在首次启动时将此数据加载到Realm数据库中.

xcode realm ios swift

15
推荐指数
1
解决办法
6917
查看次数

Xamarin与Fody.WeavingTask和SolutionDir有关

我一直在尝试在我的Xamarin android proyect中使用Realm,其中一个依赖是Fody,每次我尝试运行我的应用程序时都会显示以下错误:错误MSB4044:"Fody.WeavingTask"任务没有给出一个值必需参数"SolutionDir".

我一直在寻找修复,但找不到它,你知道如何赋予它一个价值吗?它在哪里?

对于领域块包我已经创建了FodyWeavers.xml

realm xamarin fody

15
推荐指数
3
解决办法
3807
查看次数

我可以在realm对象android中使用stringList

由于我们在领域中没有任何列表数据类型,我们如何ArrayList<String>在领域对象中使用?
我对我们制作的自定义模型的数组列表有同样的问题,ArrayList<CustomModel>但为此我明白我们首先必须使用相同的自定义模型的RealmObject

public class CustomObject extends RealmObject {
    private String name;
    private String age;
}
Run Code Online (Sandbox Code Playgroud)

然后我可以使用

private RealmList<CustomObject> customObjectList; 
Run Code Online (Sandbox Code Playgroud)

在另一个RealmObject中

我必须对字符串的arrayList做同样的事吗?
1.制作String对象
2.在Realm List中使用该对象

java android arraylist realm realm-list

14
推荐指数
2
解决办法
2万
查看次数

如何在Realm中创建嵌套查询?

我有两个领域:

public class ChatRealm extends RealmObject {
    private String id;
    private RealmList<UserRealm> users;
}

public class UserRealm extends RealmObject {
    private String id;
    private String username;
}
Run Code Online (Sandbox Code Playgroud)

我有一个用户ID,我想知道他参与了哪些聊天.我检查了Realm文档,但无法找到如何进行此类查询.

如何使用Realm查询获得我想要的结果?

realm

14
推荐指数
1
解决办法
2827
查看次数

领域迁移不起作用

    let config = Realm.Configuration(
        // Set the new schema version. This must be greater than the previously used
        // version (if you've never set a schema version before, the version is 0).
        schemaVersion: 1,

        // Set the block which will be called automatically when opening a Realm with
        // a schema version lower than the one set above
        migrationBlock: { migration, oldSchemaVersion in
            // We haven’t migrated anything yet, so oldSchemaVersion == 0
            if (oldSchemaVersion < 1) {
                // Nothing …
Run Code Online (Sandbox Code Playgroud)

realm ios swift2

14
推荐指数
2
解决办法
1万
查看次数

Realm&React Native - 实施自动更新的最佳实践?

什么是最佳实践/模式使领域成为反应原生应用程序中的反应数据源?特别是对于演示和容器组件模式

这是一个我想要反应的例子:Rem Native的领域

关于自动更新/更改事件文档有点薄,官方示例没有使用此功能(据我所知).

realm react-native

14
推荐指数
2
解决办法
7139
查看次数

对象不是此Realm的架构的一部分

一旦我尝试从Realm数据库中获取对象,应用程序崩溃了,我收到此错误:

java.lang.RuntimeException: Unable to start activity 
      ComponentInfo{com.repdev.realtimedelijn/com.repdev.realtimedelijn.activity.MainActivity}: 
    java.lang.IllegalArgumentException: Haltes is not part of the schema for this Realm
Run Code Online (Sandbox Code Playgroud)

这是我的活动它发生了

   @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Fabric.with(this, new Crashlytics());
    setContentView(R.layout.activity_main);
    Context context = this;
    View view = this.getWindow().getDecorView();

    realm = Realm.getInstance(getRealmConfiguration());
    RealmResults<Haltes> haltes = realm
            .where(Haltes.class)
            .findAll();
    HaltesRecyclerViewAdapter haltesRecyclerViewAdapter =
            new HaltesRecyclerViewAdapter(this, haltes, true, true);
    RealmRecyclerView realmRecyclerView =
            (RealmRecyclerView) findViewById(R.id.realm_recycler_view);
    realmRecyclerView.setAdapter(haltesRecyclerViewAdapter);
}
Run Code Online (Sandbox Code Playgroud)

这是模型

有人知道如何解决它?公共类Haltes实现RealmModel {

@PrimaryKey
private long id;

private String halteNaam;
private String halteNummer;

public long getId() {

    return …
Run Code Online (Sandbox Code Playgroud)

java android realm

14
推荐指数
3
解决办法
9984
查看次数

领域是关系数据库吗?

我试过搜索Realm,但以下问题没有得到解答.请帮助我正确理解以下问题:

领域是关系数据库吗?
与SQLite相比,它的效率如何?

java database android realm

14
推荐指数
2
解决办法
2571
查看次数

标签 统计

realm ×10

android ×5

java ×4

ios ×2

arraylist ×1

database ×1

fody ×1

gson ×1

react-native ×1

realm-list ×1

swift ×1

swift2 ×1

xamarin ×1

xcode ×1