Android 安卓&x2B;领域:从多个领域获取数据

Android 安卓&x2B;领域:从多个领域获取数据,android,realm,Android,Realm,我的数据结构如下:我确实有一个巨大的地址数据库,在交付Android应用程序时,我想预先填充这些地址,然后我有一些使用/链接到这些地址的用户数据 我希望将地址保存在一个域中,将用户数据保存在另一个域中。这样做的原因是,每当我提交一个新的应用程序版本时,我都可以轻松地替换addresses域,以便向用户提供最新的数据 我现在面临的问题是如何实现两个领域的连接,即获取用户数据及其相应地址。我需要阅读例如Person记录(来自用户领域)以及附加的地址记录(来自预填充领域)。这有可能吗?目前不支持从单独

我的数据结构如下:我确实有一个巨大的地址数据库,在交付Android应用程序时,我想预先填充这些地址,然后我有一些使用/链接到这些地址的用户数据

我希望将地址保存在一个域中,将用户数据保存在另一个域中。这样做的原因是,每当我提交一个新的应用程序版本时,我都可以轻松地替换addresses域,以便向用户提供最新的数据


我现在面临的问题是如何实现两个领域的连接,即获取用户数据及其相应地址。我需要阅读例如
Person
记录(来自用户领域)以及附加的
地址
记录(来自预填充领域)。这有可能吗?

目前不支持从单独的数据库加入多个RealmResuls,除非您手动将条目与条目进行匹配


也就是说,有多种方法可以实现你所追求的目标。在某种程度上,我会像许多地理应用程序一样,对地址进行编码并与用户进行匹配。

不,目前Realm不支持组合来自多个Realm的结果。您将不得不以某种方式手动执行此操作

根据您的用例,可以通过多种方式完成。一种方法是Person对象上的助手方法:

public class Person extends RealmObject {
  private String name
  private String addressId; // Id in Address Realm

  public Address getAddress(Realm addressRealm) {
    return addressRealm.where(Address.class).equalTo("id", addressId).findFirst();
  }
}

不过,我会谨慎地在列表中这样做,因为这样会引发很多查询。此外,更改侦听器和查询也不会跨领域工作。

您所说的“手动匹配条目”是什么意思?你所说的“编撰地址”是什么意思?目前没有真正的帮助…您需要手动在领域和它们各自的查询之间进行映射。