Как кодировать операцию «синхронизировать сейчас» на Android? - PullRequest
5 голосов
/ 17 декабря 2010

У меня есть адаптер синхронизации для моей БД, и в определенные моменты использования приложения он должен синхронизировать БД сейчас. Я хотел бы активировать адаптер синхронизации, как если бы его время синхронизации истекло, а затем заново установить время синхронизации (то есть через 4 часа после этого события «синхронизировать сейчас»).

1 Ответ

4 голосов
/ 20 марта 2011

Я думаю (не проверено), лучшее решение уже определено в ContentResolver.

ContentResolver.requestSync(account, authority, extras);

, поэтому можно сделать следующее:

AccountManager am = AccountManager.get(context);
Account account =  null;
am.getAccountsByType(mytype);
for(Account a : accounts) {
    if (am.getUserData(account, key)) {
        account = a;
        break;
    }
}
Bundle extras = new Bundle();
extras.putString(EXTRA_mystuff, myvalue);
ContentResolver.requestSync(account, authority, extras)
...