在Google Drive App Folder中存储房间数据库?

时间:2017-06-02 17:47:46

标签: android google-drive-api android-room

我还不熟悉Room和Google Drive API,我想知道是否可以创建一个Room数据库并将其存储在隐藏的Google Drive App文件夹中,以便跨设备同步。如果有人实现类似的东西,一个简短的例子就会很棒。谢谢!

编辑:

使用LiveData观察Room数据库中的某些内容发生变化,然后触发同步到Google云端硬盘怎么样?

1 个答案:

答案 0 :(得分:1)

即使可能,也可能无法可靠地工作。

SQLite需要直接对文件系统进行数据库访问。房间没有改变。我从未使用过Google云端硬盘API,因此我不知道它是否为您提供了对内容的直接文件系统访问权限(例如,java.io.File)。如果没有,那么你想要的就不可能了。

可靠性问题源于Google云端硬盘是您自己的独立应用。当您的应用未主动使用数据库时,驱动器应仅使用该文件。我不知道Drive是否正在采取任何措施来确保这一点。否则,您可能会损坏数据。如果用户在Drive完成任何同步工作之前修改了多个设备上的数据(例如,其中一个设备当前处于脱机状态),您也会收到数据损坏。