Android – ruční spuštění SyncAdapteru

25. 04. 2018

Android má skvěle zpracovanou podporu pro synchronizaci dat server <-> klient. Implementace sice není úplně triviální a dokumentace dokonalá, leč odvedená práce se určitě vyplatí.

Pokud chcete vědět více o tom, jak fungují v Androidu všechny ty SyncAdaptéry, ContentResolvery, ContentProvidery a AccountAuthenticatory projděte si příklad Sample Sync Adapter přímo od Google.

Pokud už máte synchronizaci implementovanou, čas od času je potřeba ji spustit na pokyn uživatele. Z dokumentace není úplně zřejmé jak to udělat, ale je to jenom pár řádků kódu:

Bundle bundle = new Bundle();
bundle.putBoolean(ContentResolver.SYNC_EXTRAS_EXPEDITED, true);
bundle.putBoolean(ContentResolver.SYNC_EXTRAS_FORCE, true);
bundle.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
ContentResolver.requestSync(null, MyContentProvider.getAuthority(), bundle);

Po zavolání výše uvedeného kódu dojde k okamžitému spuštění synchronizace. Synchronizace se díky volbě „SYNC_EXTRAS_MANUAL“ spustí i pokud má uživatel zakázaná „Data na pozadí“.

Vývoj mobilní aplikace: 11) Funguje mi vůbec ta aplikace? A co v ní dělají uživatelé?

Vývoj mobilní aplikace má mnoho různorodých aspektů, které je dobré vědět. V následujícím seriálu Vám představujeme jednotlivé díly, které Vás …

Číst článek

Vývoj mobilní aplikace: 10) Jak na soukromí v aplikaci, nebo jak zvládnout schvalování na storech

Vývoj mobilní aplikace má mnoho různorodých aspektů, které je dobré vědět. V následujícím seriálu Vám představujeme jednotlivé díly, které Vás …

Číst článek

Vývoj mobilní aplikace: 9) Jak na Google Play a AppStore a jestli vůbec

Vývoj mobilní aplikace má mnoho různorodých aspektů, které je dobré vědět. V následujícím seriálu Vám představujeme jednotlivé díly, které Vás …

Číst článek

Kontakt