我有一個應用程序SyncAdapter
。此外,對於正常的同步我觸發USER_READ
事件與我傳遞一個Bundle
到適配器不堅持它:Bundles通過SyncManager持續多久?
Bundle settingsBundle = new Bundle();
settingsBundle.putString(SyncAdapter.USER_READ, uid);
ContentResolver.requestSync(account, authority, settingsBundle);
這將正確的某個時候打電話給我的同步程序的未來。在Bundle
中設置的每個uid
都將觸發其自己的運行,並且所有內容都按預期進行同步。
如果現在接觸不良,或請求超時,然後我設置的軟錯誤:
syncResult.stats.numIoExceptions += 1;
,這將導致請求被多次重複。這也工作得很好。
多久這些SyncRequests /捆綁得到持續?
該文檔指出,遇到軟錯誤將導致指數退避,同步將在一段時間後運行。
- 它會在某個時候被取消嗎?經過多次軟錯誤?
- 重新啓動設備後會再次入隊嗎?
由於接觸不良而同步將失敗與軟錯誤多次:我想知道,如果只是排隊同步的要求是不夠的,或者如果我必須提供某種持久的自己,以確保請求是在某個時刻發送。
這取決於您的要求,它會在系統發出一條網絡消息時,按照定期的時間間隔,在設備重新啓動後按需求閱讀http://developer.android.com/training/sync-adapters /running-sync-adapter.html –
@WaqasAhmed謝謝,是的。我知道文檔。我只是想知道這些請求會持續多久,特別是如果我不只是使用*完全同步*,但需要捆綁的數據 –