私のMIDLETにビデオをストリーミングしています。再生中、20 秒後 (システム設定によって異なります)、電話機のディスプレイは待機モードになります。
これを防ぐにはどうすればよいですか? たとえば、何かをタップしてディスプレイをウェイクアップすることなく、ビデオを 5 分間視聴できるようにするにはどうすればよいですか?
ええええわかった!!!しかし、それはちょっとしたハックであり、実際の「Dont-Go-To-Stand-By」機能ではありません...それでも、完璧に機能します!!!! =D
わかりましたので、アイデアは、ディスプレイを起動する必要があるタイムアウトを定義することです。ユーザーに「設定」画面でこれを定義させ、後で読めるように RMS に書き込みます...
getDisplay().flashBacklight(100);
次に、定義したタイムアウトが経過するたびにメソッドを呼び出す TimerTask を定義します。そして、これは魅力のように機能します!!! =D
コンセプトコードはこちら。最初に 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 秒後にスタンバイ状態になると、電話で何かをタップしてウェイクアップするのと同じように、タイマーが実行されるたびにタイマーがウェイクアップします。=)))
やあ... =)))
PS NOKIA N96でテスト済み。