icon 画面をロック解除 (2011/07/11)

Manifestファイルに追加


    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />

KeyguardManager、KeyguardLock を利用する


Context から KeyguardManager を取得し KeyguardManager.KeyguardLock でスクリーンロックをはずします。

KeyguardManager.OnKeyguardExitResult ハンドラが呼ばれると PowerManager.WakeLock でスクリーンスリープから復帰します。

	protected WakeLock wakelock;
	protected KeyguardManager keyguardmanager;
	protected KeyguardLock keyguardlock;
	
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

                setContentView(R.layout.alarm);
        	
		final Context _context = this.getApplicationContext();
		keyguardmanager = (KeyguardManager) _context.getSystemService(Context.KEYGUARD_SERVICE);
		keyguardlock = keyguardmanager.newKeyguardLock("FindMyPhone");
		keyguardlock.disableKeyguard();
		
		keyguardmanager.exitKeyguardSecurely(new OnKeyguardExitResult() {
			public void onKeyguardExitResult(boolean success) {
				wakelock = ((PowerManager) _context.getSystemService(Context.POWER_SERVICE))
						.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "FindMyPhone");
				wakelock.acquire();
			}
		});
	}

	@Override
	public void onDestroy() {
		super.onDestroy();
		if (wakelock != null && wakelock.isHeld()) {
		    wakelock.release();
		}
		if (keyguardlock != null) {
		    keyguardlock.reenableKeyguard();
		}
	}

onDestroy() のライフサイクルでキーロックと スクリーンを戻してますが、ちょっと疑問です。
アプリの仕様にもよると思いますが、スクリーンロックは最初の状態にちゃんと戻さないと、予期しない問題が起こるとの事です。

このサイトについて

HTML5 & CSS3化しつつあるので、現在IEには対応してません。
できれば、Google Chromeやら Apple SafariのWebKit系をお勧めします。

DBからプログラムまで一応全て自作なので、バグってたらすいません。
実験でFlash版(Flex版)を先に作りましたが、ちょっと停止してます。

プロフィール

新宿近辺でSE & プログラマーしてます。
Webアプリの開発・設計とか、最近はiPhoneとか奮闘してます。
デザインはさっぱりです。

音楽は、昔からCubase打ち込み人間で、そっちの方が経歴は長いですが、最近はやる暇がないです。。。

今は、Gon's Privates ってバンドのキーボードやってます。
単発的に、なんちゃってジャズ系のライブもやってます。

名古屋生まれなのでドラゴンズ好きです。

Info && SNS

Gmail

 yohei.yoshikawa@gmail.com

Twitter

 http://twitter.com/yoo_yoo_yoo

あんまつぶやきませんが、一応技術系メインで使ってます。情報交換はこちらへ

FaceBook

 http://www.facebook.com/#!/profile.php?id=1439130626

海外の知り合いがいないので閑散としてます。

mixi

 http://mixi.jp/show_profile.pl?id=230072

音楽仲間とかはこっちメインでやってます。興味があればこちらへ