Изменить таймер для периодической синхронизации

Я использовал syncadapter для периодической отправки данных на сервер. Я вызываю его, когда приложение начинает использовать следующий фрагмент кода

ContentResolver.addPeriodicSync(
    mAccount,
    AUTHORITY,
    bundleParams,
    SYNC_INTERVAL);

ContentResolver.setSyncAutomatically(mAccount, AUTHORITY, true);
ContentResolver.setMasterSyncAutomatically(true);

Теперь я хочу изменить SYNC_INTERVAL и выполнять агрессивную периодическую синхронизацию, когда он входит в определенную активность. Я хотел знать, как изменить время синхронизации и восстановить его, когда оно выйдет из активности? Я попытался удалить периодическую синхронизацию с помощью removePeriodicSync(...), а затем добавить синхронизацию с другим таймером. Но синхронизация по-прежнему выполняется с тем же интервалом времени, что и предыдущая.


person Roadblock    schedule 07.05.2014    source источник


Ответы (1)


Я знаю, что это старо, но этот вопрос — первое, что возникает при поиске Google по этой теме, поэтому я решил добавить больше деталей.

Просто используйте ContentResolver.addPeriodicSync(). Согласно документам:

Если уже запланирована другая периодическая синхронизация с учетной записью, полномочиями и дополнительными функциями, новая периодическая синхронизация не будет добавлена, вместо этого будет обновлена ​​частота предыдущей.

Источник: ссылка

person Danilo Carvalho    schedule 18.01.2016