As the official documentation says
The sync adapter component in your app encapsulates the code for the
tasks that transfer data between the device and a server. Based on the
scheduling and triggers you provide in your app, the sync adapter
framework runs the code in the sync adapter component.
I suggest you using SyncAdapter when you need periodic updates even when the user is not using the app. The main strength of the SyncAdapter that it can be switched by Android system even if you don't use the app. So when user enters the app he always have actual data. If you don't have local DB and just need periodic updates use Handler instead.
int updatePeriod = 60*1000;// one minute in milliseconds
mHandler = new Handler();
mRunnable = new Runnable(){
@Override
public void run() {
//update request here
mHandler.postDelayed(mRunnable, updatePeriod );
}
};
mRunnable.run(); // missing
This code runs run() every minute. Add your update logic to the run method. Also if you'll be requesting server data every minute you'll just waste device battery. If you want more info on working with the network check this video https://www.youtube.com/watch?v=l5mE3Tpjejs