是否可以将Android设备中文件夹/目录中的选定文件同步到带云端硬盘驱动器的Google云端硬盘Android API。为了做到这一点,我需要学习或研究什么样的东西。
答案 0 :(得分:1)
首先,简单明了:
有2个Apis,REST Api(v2,v3)和GDAA。两者都至少会为您提供CRUD功能(请参阅here和here)。如果您使用REST
Api,则会获得更多低级功能,但您必须处理网络问题(同步服务?)。 GDAA
将负责(在线/离线状态等)。
现在,不那么容易的部分,如何同步:
REST Api具有内置功能Push Notifications,因此它看起来像一个胜利者。直到您意识到必须提供处理通知的服务器并将其(通过GCM?)发送到您的Android应用程序。如果您需要处理网络状态,那么REST Api推送通知肯定需要很多实现。
从我的'玩弄'到目前为止,最优雅的方式是将GDAA与Firebase结合使用。 GDAA
处理CRUD,Firebase
进行通信。
这是一个原始的算法:
用于GDAA下的Android设备
1 / Android应用创建一个文件,接收completion notification with ResourceId
2 /将ResourceId添加到Firebase中
3 /每个Firebase参与者都会收到通知
或用于REST或其他实体(web,ios)下的Android应用程序
1 / app(REST,web,ios)创建一个产生ResourceId的文件
2 /将文件的ResourceId添加到Firebase中
3 /每个Firebase参与者都会收到通知
GDAA适用于我,因为两个“更新程序”都是相同的Android应用程序(基本上在设备之间同步应用程序的相同数据)。遗憾的是,由于GDAA不支持DRIVE范围,因此它不会看到“其他实体”创建的文件,因此您仍可以考虑使用“REST + Firebase”解决方案。
谨慎提问:
请注意带宽/电池消耗。无论何时触摸Firebase更新方法,都会有导致battery drain的即时网络流量,从而打败GDAA正在做的工作以最小化它。
祝你好运