我正在学习我的Android技能,并且一直在玩架构组件。因此,我使用Room注释创建了一个实体类,用于持久化到数据库,并在实体类上实现了Parcelable,部分原因是将实体对象放入Intent对象并在活动/片段之间传递它。我只想知道这是否是个好办法。使用诸如数据库泄漏或安全漏洞之类的方法有什么缺点吗?只是好奇而已。
发布于 2019-05-09 11:49:16
我只想知道这是否是个好办法。
IMHO,在现代Android应用程序开发中,由于几个原因,包括:
Intent附加程序传递对象,您就在复制。如果你的应用程序的某一部分想修改模型对象.该应用程序的其余部分,保存了其他数据副本,如何知道这些变化呢?理想情况下,您有一个带有反应性API的存储库,其中存储库是进行数据更改的一方。然后,它可以将数据更改通知其他感兴趣的方面,提供模型对象的最新呈现。startActivity()、startActivityForResult()、setResult()等的Intent时,该Intent的内容将传递给核心OS进程.即使正在启动的活动与请求启动该活动的代码处于相同的进程中。对于Intent的大小有内存限制(粗略地说,1MB或更低)。现在传递完整的模型对象可能会很好,但稍后如果有人向模型中添加了Bitmap字段或其他东西,您可能会遇到麻烦。https://stackoverflow.com/questions/56058576
复制相似问题