我还不熟悉Room和google drive api,我想知道是否有可能创建一个房间数据库并将其存储在隐藏的google drive app文件夹中,以便跨设备同步。如果有人实现了类似的东西,一个简短的例子将是很好的。谢谢!
编辑:
使用livedata观察文件室数据库中的某些变化,然后触发与google drive的同步,怎么样?
最佳答案
即使有可能,它也可能无法可靠地工作。
sqlite需要直接访问数据库的文件系统。房间不能改变这一点。我从未使用过google drive api,因此我不知道它是否为您提供了对内容的直接文件系统访问(例如java.io.File
)。如果没有,那么你想要的是不可能的。
可靠性问题来自于google drive是一个独立于你自己的应用。驱动器应仅在应用程序未积极使用数据库时才使用该文件。我不知道驱动器是否正在采取任何措施来确保这一点。否则,可能会导致数据损坏。如果用户在驱动器完成任何同步工作之前修改多个设备上的数据(例如,其中一个设备当前处于脱机状态),也会导致数据损坏。
关于android - Google云端硬盘应用文件夹中的存储室数据库?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44334718/