2010-12-16 14 views
5

DB'm için bir senkronizasyon adaptörüm var ve uygulama kullanımındaki belirli noktalarda, DB'yi şimdi senkronize etmek gerekiyor. Senkronizasyon bağdaştırıcısını eşzamanlama zamanı tetiklenmiş gibi tetiklemek ve sonra eşitleme zamanını yeniden kurmak (yani, şimdi "şimdi eşitleme" olayından 4 saat) istiyorum.Android'de "şimdi eşitleme" işlemi nasıl kodlanır?

cevap

4

Daha iyi bir çözüm olduğunu düşünüyorum (test edilmemiş) zaten ContentResolver tanımlanan

ContentResolver.requestSync(account, authority, extras); 

böylece bir yapabilir aşağıdadır:.?

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) 
+1

Eğer Belgeler kimin davranış sağlayıcı kontrollü olmak olduğunu" söylüyor ise "otorite" söyle lütfen edebilirsiniz ".... bu ne anlama geliyor? – blackfyre

+0

@ user1204089 bu" contentAuthority "dir '' kaynağında belirtilen. Ayrıca, hepsi için "null" hesabını "sadece" sağlayabilirsiniz. – rndstr