<hr class=“my12大纲无baw0 bb bc-POWER-400”/
想改进这个问题吗?编辑这篇文章,更新这个问题,以便用事实和引文来回答。
四年前关闭
我正在构建一个应用程序,我需要在其中使用一个数据库。我正在考虑使用Room,因为它现在很新而且很热门。但是我也听说了很多关于Realm的好东西。有人能指出使用每个应用程序的可能优势吗
我做了研究,读了文件,但我自己没有理解的经验
客房文件
领域文档
编辑:
已经有一段时间了,我可以指出使用Room的另一个原因。虽然您可以使用领域和转换与LiveData联系起来,但使用Room,您可以直接为DB返回LiveData(以及使用插件的RXJava类型),这将为您节省一些样板代码和头痛的事情
编辑2:
除了第一次编辑之外,Room现在在Kotlin中还提供了对协同程序的一流支持,因此如果您计划使用这些程序,它将是一个很好的选择->https://medium.com/androiddevelopers/room-coroutines-422b786dc4c5
王国
这是一个相对快速和方便的库,所有链接都是简单实现的,这与数据库的面向对象相关。优秀的文档。可能是目前在移动设备上存储数据的最佳选择之一,缺点只能是apk文件的大小增加2.5 MB
房间
Google I/O 2017上展示了一个有趣的解决方案,它是在Android操作系统上使用数据库的最佳解决方案。尽管有必要使用显式sql请求,但该库非常方便,我个人很喜欢。性能方面领先,因此我建议您选择此特定库。大广告这一优势基于内置SQLite数据库。由于此解决方案是由谷歌提交的,它将很快变得流行,因此,为随之出现的问题找到解决方案不会有任何问题
Realm使用了更多的RAM,并且增加了apk大小和构建时间。所以我更喜欢房间
有比较:https://github.com/AlexeyZatsepin/Android-ORM-benchmark