Синтаксическая ошибка на токене «}», удалите этот токен

Я продолжаю получать эту ошибку, говоря "Синтаксическая ошибка на токене"}, удалите этот токен. & Quot; на последней строке, почему? Я ищу ошибку, но не могу ее найти. Как вы можете видеть, это услуга, вызывающая другую услугу время от времени.

package com.iggeman.updater;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;

public class UpdaterService extends Service {

private static final String TAG = UpdaterService.class
        .getSimpleName();
private Updater updater;
public boolean isRunning = false;

@Override
public IBinder onBind(Intent intent) {
    // TODO Auto-generated method stub
    return null;
}

@Override
public void onCreate() {
    // TODO Auto-generated method stub
    super.onCreate();

    updater = new Updater();

    Log.d(TAG, "onCreate");
}

@Override
public void onStart(Intent intent, int startId) {
    // TODO Auto-generated method stub
    super.onStart(intent, startId);

    if (this.isRunning == false) {
        updater.start();
        this.isRunning = true;
    }

    Log.d(TAG, "onStart");
}

@Override
public synchronized void onDestroy() {
    // TODO Auto-generated method stub
    super.onDestroy();

    if (this.isRunning) {
        updater.interrupt();
    }

    updater = null;

    Log.d(TAG, "onDestroy");
}

class Updater extends Thread {
    static final long DELAY = 10000;
    private boolean isRunning = false;

    public Updater() {
        super("Updater");
    }

    @Override
    public void run() {
        // TODO Auto-generated method stub
        super.run();
        isRunning = true;
        while (isRunning) {
            try {
                // Do something

                startService(new Intent(getBaseContext(), StartServiceTwo.class));

                Log.d(TAG, "Updater running");

                Thread.sleep(DELAY);
            } catch (InterruptedException e) {
                // interrupted
                isRunning = false;
            }
        } // while
    }

    public boolean isRunning() {
        return this.isRunning();
    }
}
}

Я прошел через все скобки, и я не могу найти никого, кто находится там, где он должен быть.

Редактировать:

Еще ошибка:

package com.iggeman.updater;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;

public class UpdaterService extends Service {

private static final String TAG = UpdaterService.class
        .getSimpleName();
private Updater updater;
public boolean isRunning = false;

@Override
public IBinder onBind(Intent intent) {
    // TODO Auto-generated method stub
    return null;
}

@Override
public void onCreate() {
    // TODO Auto-generated method stub
    super.onCreate();

    updater = new Updater();

    Log.d(TAG, "onCreate");
}

@Override
public void onStart(Intent intent, int startId) {
    // TODO Auto-generated method stub
    super.onStart(intent, startId);

    if (this.isRunning == false) {
        updater.start();
        this.isRunning = true;
    }

    Log.d(TAG, "onStart");
}

@Override
public synchronized void onDestroy() {
    // TODO Auto-generated method stub
    super.onDestroy();

    if (this.isRunning) {
        updater.interrupt();
    }

    updater = null;

    Log.d(TAG, "onDestroy");
}

class Updater extends Thread {
    static final long DELAY = 10000;
    private boolean isRunning = false;

    public Updater() {
        super("Updater");
    }

    @Override
    public void run() {
        // TODO Auto-generated method stub
        super.run();
        isRunning = true;
        while (isRunning) {
            try {
                // Do something

                startService(new Intent(getBaseContext(), StartServiceTwo.class));

                Log.d(TAG, "Updater running");

                Thread.sleep(DELAY);
            } catch (InterruptedException e) {
                // interrupted
                isRunning = false;
            }
        } // while
    } //Run     
} //Class updater

public boolean isRunning() {
        return this.isRunning();
   }
}  //Main body

Ответы на вопрос(3)

Ваш ответ на вопрос