我在我的应用程序中使用了一个syncadapter。我需要它每天上午6点触发一个事件。这可能吗?
有没有办法在给定时间每天触发一次syncadapter事件?
谢谢!
答案 0 :(得分:2)
这可能会有所帮助: ContentResolver.addPeriodicSync()
这也是: Transferring Data Using Sync Adapters
或者,您始终可以自行触发同步: ContentResolver.requestSync()
但是,我建议不要执行requestSync(),除非您确定每天早上6点需要与服务器同步,而不管数据发生了什么。同步适配器的关键在于系统可帮助您在不浪费电池的情况下使设备保持最新状态。如果您继续关闭和打开WiFi或数据访问以进行同步,那么与使用同步适配器框架为您安排所有内容相比,您使用的电池要多得多。
答案 1 :(得分:2)
我觉得接受的答案并没有真正回答这个问题。这是我在文档中找到的:
“请注意,addPeriodicSync()不会在一天中的特定时间运行同步适配器。要在每天大致相同的时间运行同步适配器,请使用重复警报作为触发器。重复警报更多描述有关AlarmManager参考文档的详细信息。“
http://developer.android.com/training/sync-adapters/running-sync-adapter.html#RunPeriodic