Не переводите дисплей в режим ожидания в JavaME
Вопрос
Я транслирую видео на свой MIDLET.И пока он его воспроизводит, через 20 секунд (зависит от настроек системы) дисплей телефона переходит в режим ожидания.
Как я могу предотвратить это, чтобы я мог смотреть видео, например, в течение 5 минут, без необходимости нажимать что-либо, чтобы активировать дисплей?
Решение
Дааааа я поняла!!!Но это небольшой хак, а не настоящая функция «Не переходи в режим ожидания»…тем не менее это работает ИДЕАЛЬНЫЙ!!!!= Д
Итак, идея состоит в том, чтобы определить тайм-аут, по истечении которого дисплей должен разбудиться.Я позволяю пользователю определить это на экране «Настройки» и записываю это в RMS, чтобы иметь возможность прочитать это позже...
Далее я определяю TimerTask, который вызывает getDisplay().flashBacklight(100);
метод каждый раз, когда истекает определенный тайм-аут.И это работает как шарм!!!= Д
Вот код концепции.Сначала на VideoCanvas (экране для рисования видео) я определяю TimerTask:
private class WakeTask extends TimerTask
{
public void run()
{
display.flashBacklight(100);
}
}
Далее в конструкторе VideoCanvas запускаю таймер и передаю ему таймаут, например 10 секунд...вот и все:
***
timer = new Timer();
timer.schedule(new WakeTask(), 0, 10000);
***
Таким образом, если дисплей переходит в режим ожидания через 15 секунд, а таймер срабатывает каждые 10 секунд, он никогда не перейдет в режим ожидания и будет оставаться в активном состоянии до тех пор, пока вы не остановите таймер.А если он перейдет в режим ожидания через 5 секунд, таймер будет будить его каждый раз, когда он запускается, точно так же, как вы это делаете, когда вы нажимаете что-то на телефоне, чтобы разбудить его."="
Даааа..."="
P.S.Проверено на NOKIA N96.