2011年8月16日火曜日

Android端末の自動的な画面ロックを行わないようにする

このエントリーをはてなブックマークに追加
Android端末を放置しておくと、自動的に画面がロックされます。このロックを行わないようにするためにはWindowクラスのaddFlagsメソッドを利用します。



画面ロックを行わないようにする手順例は次の通りです。
1. ActivityのgetWindowメソッドでWindowインスタンスを取得。
2. 引数にWindowManager.LayoutParams.FLAG_KEEP_SCREEN_ONを指定してWindowインスタンスのaddFlagsメソッドを呼び出す。

また、元に戻す場合はclearFlagsメソッドを用いるようです。


以下は、アプリ実行中はずっと画面ロックしないようなコード例です。

コード
package sgl.example.screen;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.WindowManager;

public class ScreenTest extends Activity{
     private final String TAG = "ScreenTest";

     @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d(TAG, "onCreate");
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
    }

    @Override
    public void onDestroy() {
         super.onDestroy();
         Log.i(TAG, "onDestroy");
         getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
    }

}


関連:Android端末の画面の向きを固定する2つの方法

0 件のコメント:

コメントを投稿