Android:如果备份计划错过怎么办?

时间:2016-03-30 10:46:10

标签: android google-drive-api

我每天凌晨3点设定一个时间表进行备份。在此期间,需要进行本地备份,然后进行云备份到Google云端硬盘。我的问题是:

如果凌晨3点没有互联网,则不会进行云备份。因此,如果凌晨3点始终没有互联网,则永远不会进行云备份。

这有什么解决办法吗?

2 个答案:

答案 0 :(得分:1)

看起来Completion Events可以帮助您实施。

  

失败 - 此状态表示与此相关的操作   事件永久无法应用于服务器。内容   或者可以检索未能应用于服务器的元数据   使用CompletionEvent的getModifiedContentsInputStream或   getModifiedMetadataChangeSet,允许您尝试将它们应用于   服务器以后。

由于您要安排上传,可以通过 EventService 检查失败,然后只需实施代码即可按您选择的时间间隔重试上传。

答案 1 :(得分:0)

我采取了另一种方法。我在AndroidManifest.xml中将接收器定义为:

<receiver android:name="com.xyz.abc.Receiver"
    android:exported="false"
    android:process=":remote" >
    <intent-filter>
        <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
    </intent-filter>
</receiver>

只要网络连接发生变化,就会触发此操作。然后在onReceive()中如果需要备份,我会开始上传过程。这样,我节省了不必要的带宽消耗。

感谢大家的帮助!