Android Schedule Task при налична интернет връзка

Внедрих приложение за Android, което извлича данни от база данни, хоствана отвън, и ги записва локално на устройството.

Това, което трябва да правя, е да проверявам всеки ден за промени в хостваната база данни и въз основа на промените приложението ще актуализира локалната база данни SQLite.
Моят въпрос: Трябва да проверявам във фонов режим всички промени в базата данни ежедневно, в момента, когато заданието започне и има интернет връзка, ще проверява и спрете и стартирайте отново на следващия ден, ако в момента няма интернет връзка, заданието трябва да се проверява на всеки 10 минути, докато интернет връзката е налице.
Също така имам нужда заданието да не се повлияе, ако устройството се рестартира.

Ако някой може да ми предостави малък демонстрационен код, тъй като съм начинаещ в разработката за Android, това ще бъде високо оценено.


person Ahmed Yasin    schedule 02.02.2015    source източник


Отговори (2)


Това, което търсите, е SyncAdapter, което работи във фонов режим независимо от приложението, то ще ви даде всички възможности, които искате.
За да навлезете в темата, гледайте този видеоклип, той обяснява всичко доста добре:
https://www.youtube.com/watch?v=xHXn3Kg2IQE

И погледнете връзките в отговорите на този въпрос:
Собствен адаптер за синхронизиране за Android?

person Nickolaus    schedule 02.02.2015
comment
връзката на vogella не е за синкадаптери - person njzk2; 03.02.2015
comment
моя грешка го замени с друга връзка - person Nickolaus; 03.02.2015

Можете да използвате график на работа в Android, преди Lollipop има график на работа на Firebase, това спестява данни, време и батерия, можете да проверите повече тук

https://developer.android.com/reference/android/app/job/JobScheduler.html

person Javier    schedule 30.03.2017