Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Alex_244
0 / 0 / 0
Регистрация: 03.04.2013
Сообщений: 78
#1

Таймер останавливается при блокировке экрана - Программирование Android

25.07.2016, 14:39. Просмотров 196. Ответов 1
Метки нет (Все метки)

Он как бы не останавливается вроде до конца, но, например, запускаю, блокирую экран, в реале жду примерно минуту, потом смотрю, он отсчитал только 10 сек. Можно это как-то исправить?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
public class MainActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener{
 
    private TextView mTextTime;
    private ToggleButton toggleButton;
    int mCurrentPeriod = 0;
    private Timer myTimer;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        mTextTime=(TextView) findViewById(R.id.textView);
        AssetManager assetManager = getAssets();
        Typeface font =  Typeface.createFromAsset(assetManager,"fonts/source_sans_pro.light.ttf");
        mTextTime.setTypeface(font);
 
        toggleButton = (ToggleButton) findViewById(R.id.toggleButton);
        toggleButton.setOnCheckedChangeListener(this);
 
    }
 
    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
              if(isChecked){
                  myTimer = new Timer();
                  myTimer.schedule(new TimerTask() {
                      @Override
                      public void run() {
                          TimerMethod();
                      }
                  }, 0, 1000);
              }
        else{
                  mCurrentPeriod = 0;
                  if (myTimer != null)
                      myTimer.cancel();
                  mTextTime.setText("00:00");
              }
    }
 
    private void TimerMethod() {
 
        this.runOnUiThread(Timer_Tick);
    }
 
    private Runnable Timer_Tick = new Runnable() {
        public void run() {
            mCurrentPeriod++;
            String temp = (new SimpleDateFormat("mm:ss")).format(new Date(
                    mCurrentPeriod * 1000));
            mTextTime.setText(temp);
 
 
        }
    };
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.07.2016, 14:39     Таймер останавливается при блокировке экрана
Посмотрите здесь:
При блокировке экрана выключить медиаплеер Android
Android Приложение останавливается, когда делаю поворот экрана
Обнуление переменных при блокировке Android
Вспышка при блокировке телефона Android
Как запускать приложение при блокировке телефона? Android
При сворачивании приложения, останавливается радио Android
Android Ошибка при повороте экрана
Сохранение объекта при повороте экрана Android
Ориентация экрана при загрузке данных Android
При повороте экрана выпадает ошибка Android
Android Непонятное поведение при повороте экрана
Android Сохранить imageview при повороте экрана

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
25.07.2016, 14:55     Таймер останавливается при блокировке экрана #2
Почитай про сервисы. Они точно работают даже во "время сна".
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru