Nic*_*ick 0 android google-drive-api
我正在使用Google Drive Android API(是的,我知道它仍然在开发人员预览中),在Drive上创建一个可以在所有用户设备上保留数据的文件.
https://developers.google.com/drive/android/create-file
因此,请使用手机上的应用:
- 检查文件是否存在(按文件名过滤而不是在垃圾箱中)
- 如果存在,则使用数据读取和更新本地sqlite
- 如果不存在则创建新文件,并从sqlite写入数据.然后请求同步.
- 当用户更改数据时,再次打开文件,写入内容并提交/同步.
我正在测试我在手机上运行的位置,然后在我的平板电脑上的情况,并且恰好有多个同名的文件被打开,我的应用程序在打开时会感到困惑.我猜有重复项,因为同步有一个延迟,第二个设备没有找到现有文件,因此创建了一个新文件.
所以,现在我想,我用这个名字(没有标记为垃圾)拉入所有文件并合并它们,然后在除了其中一个之外的所有文件上标记垃圾并称之为当前.随着时间的推移,这将在垃圾箱中留下许多文件.
几个问题:
无论如何都要创建一个具有唯一名称的文件,或者通过一些独特的句柄拉动.重复使得使用此Drive产品变得麻烦.
是否有删除文件,不标记垃圾,但实际上删除.合并后,我不想在使用数月之后留下数百个标记为垃圾的文件.
我错过了一些明显的东西吗?我想做的就是不断覆盖最后一个设备的文件以保存数据并调用主副本.然后让其他设备知道它们应该在运行时刷新.现在,我有一个网络工具应用程序,但我也在创建一个游戏,并希望利用相同的机制来保存/持久设备的游戏状态....此时我不太相信Drive是适当的手段.
正如您所发现的,标题在Drive中并不是唯一的.但是,Drive中的每个项目都有唯一的标识符.在Android API中,DriveId就是其中的代表.(在Web API中,它是资源ID).
创建文件后,您可以将DriveId保存在本地首选项中,以便下次可以通过ID查找它.这将保证您在同一设备上始终拥有相同的文件.
在其他设备上,您可以先按标题进行查询以确定它是否已存在,然后保存DriveId(如果存在).
| 归档时间: |
|
| 查看次数: |
1055 次 |
| 最近记录: |