I used a service for syncing process in my android app. Now i want to add a progress bar to show that syncing process is going on. But when start the service app stops showing following error. But i don't know why it's happen,
Error,
10-23 05:27:56.390: E/AndroidRuntime(25458): FATAL EXCEPTION: Timer-0
10-23 05:27:56.390: E/AndroidRuntime(25458): Process: com.abc, PID: 25458
10-23 05:27:56.390: E/AndroidRuntime(25458): java.lang.NullPointerException
10-23 05:27:56.390: E/AndroidRuntime(25458):    at com.abc.service.SynchingService$1.run(SynchingService.java:51)
10-23 05:27:56.390: E/AndroidRuntime(25458):    at java.util.Timer$TimerImpl.run(Timer.java:284)
this is my code for service,
public class SynchingService extends Service {
private Timer t;
private static MainActivity mainActivity;
ProgressDialog dialog;
@Override
public IBinder onBind(Intent intent) {
    return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    this.timer();
    return Service.START_STICKY;
}
private void timer() {
    t = new Timer();
    t.scheduleAtFixedRate(new TimerTask() {
        @Override
        public void run() {
            mainActivity.runOnUiThread(new Runnable() {
                public void run() {
                    dialog = ProgressDialog.show(mainActivity, getString(R.string.dialog_saving), getString(R.string.dialog_please_wait));
                }
            });
            callSync();
        }
    }, 1000, 1000 * 60 * 60);
}
/**
 * This method is used to call every table to start syncing
 * 
 * @param Nothing
 * @return No return value
 */
private void callSync() {
    DataManager datamanager = DataManager.getInstance(getApplicationContext());
    Log.d("service", "running");
    // sync contact data
    ContactSync contactSync = new ContactSync();
    contactSync.contactGroupSync();
    contactSync.contactSync();
    Log.d("service2", "running2");
    // sync horse data
    HorseSync horseSync = new HorseSync();
    horseSync.horseSyncWithServer();
    Log.d("service3", "running3");
    // sync blog data
    BlogSync blogSync = new BlogSync();
    blogSync.blogSyncWithServer();
    Log.d("service4", "running4");
    // delete news categories from local DB.
    datamanager.deleteNewsCategories(MainActivity.mainActivity);
    // delete news from local DB.
    datamanager.deleteNews(MainActivity.mainActivity);
    // delete advertisement categories from local db.
    datamanager.deleteAddCategories(MainActivity.mainActivity);
    // delete advertisements from local db.
    datamanager.deleteAdds(MainActivity.mainActivity);
    dialog.dismiss();
}
@Override
public void onDestroy() {
    super.onDestroy();
}
}
please help me to fix this issue.
 
     
     
     
    