Java 领域-在应用程序之间共享数据库

Java 领域-在应用程序之间共享数据库,java,android,database,realm,Java,Android,Database,Realm,因此,我有一个由3个APK/应用程序组成的应用程序。如何在应用程序之间共享数据库?我假设目前在应用程序之间不可见的原因是它们在不同的上下文中传递 谢谢我不认为共享同一个数据库是可能的, 但您可以尝试以下方法: 将文件保存在特定目录中,并与应用程序一起使用 在服务器端使用数据库,并使用xml/json读取结果 来自这个王国的基督徒。 目前你所要求的确实不可行。正如其他人指出的那样,实际上只有两种方法 1) 公开ContentProvider。然而,这需要您将RealmResults映射到一个游标,

因此,我有一个由3个APK/应用程序组成的应用程序。如何在应用程序之间共享数据库?我假设目前在应用程序之间不可见的原因是它们在不同的上下文中传递


谢谢

我不认为共享同一个数据库是可能的, 但您可以尝试以下方法:

  • 将文件保存在特定目录中,并与应用程序一起使用
  • 在服务器端使用数据库,并使用xml/json读取结果
  • 来自这个王国的基督徒。 目前你所要求的确实不可行。正如其他人指出的那样,实际上只有两种方法

    1) 公开ContentProvider。然而,这需要您将RealmResults映射到一个游标,这不是一件小事。我们正计划公开一个RealmCursor,但其他事情已经有了优先权,所以我们还没有看到细节

    2) 将领域数据库放在共享位置,让应用程序从那里读取。这听起来是一种简单的方法,但不幸的是,Realm还不支持多个进程(多个应用程序需要同时打开同一个Realm文件)。所以现在你必须在你的应用程序中实现一个锁定方案,这样他们才能决定谁可以打开文件

    所以现在,答案是:你可以,但它需要大量的黑客,所以不推荐。从积极的一面来看,我们意识到这一点,至少多进程支持正在atm上积极开展。

    这说明了如何在iOS上实现对这一点的支持,底部有以下关键信息

    您可以在领域Swift v0.92以后(下载最新版本或阅读文档)和领域Objective-C v0.91以后(下载最新版本或阅读文档)中使用进程间通信


    恐怕我不知道安卓系统的状态。

    可以job@hrskrs内容提供商与领域合作吗?我不知道。检查一下,也许它能帮你找到这个答案我希望它能很快找到!这肯定会使领域高于其他ORM。我决定不使用领域而采用ContentProvider方式。多进程已经被提到是一个限制,实际上我们已经非常接近于发布初步的游标支持:@ChristianMelchior仍然是这样。诸如开发应用程序小部件和在应用程序之间共享数据之类的事情仍然是不可能的?@ChristianMelchior你们现在有了RealmCursor??