Таймер обратного отсчета не работает в службе Android - PullRequest
0 голосов
/ 05 июля 2018

Я пытаюсь внедрить счетчик таймера в сервис Android, но он не запускается.

СЕРВИСНЫЙ КЛАСС

public class ServiceSample extends Service {
int timer = 0;

@Nullable
@Override
public IBinder onBind(Intent intent) {
    return null;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {

    Toast.makeText(this, "Service Started", Toast.LENGTH_SHORT).show();



    new CountDownTimer(20000, 1000) {


        @Override
        public void onTick(long millisUntilFinished) {
            timer++;
            Toast.makeText(ServiceSample.this, "" +timer, Toast.LENGTH_SHORT).show();
            Log.d("count", "" + timer);
        }

        @Override
        public void onFinish() {

        }
    }.start();

    return START_STICKY;
}

@Override
public void onDestroy() {
    super.onDestroy();
    Toast.makeText(this, "Service Stopped", Toast.LENGTH_SHORT).show();
  }
 }

ОСНОВНАЯ ДЕЯТЕЛЬНОСТЬ

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    startService(new Intent(MainActivity.this,ServiceSample.class));

  }
 }

Служба запускается, так как показывает Toast, но Timer не отображается, и при этом не отображается никакой ошибки в Logcat. И ни один из них не запущен.

И я добавил запись службы в файле манифеста

...