2011-12-28 2 views

答えて

0

Serviceを開始する必要があります。
次に、onCreate内でウェイクロックを取得する必要があります。その後、onDestroyでWakeLockを解放します。つまり、バックグラウンドからウェイクロックを保持しようとしている場合です。

それを得るために、それを解放することです
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); 
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Tag"); 
wl.acquire(); 

wl.release(); 

そしてもちろん、あなたが任意のメソッドの外でクラス本体内wlを宣言したいと思います。

+0

PowerManager.FULL_WAKE_LOCKが廃止され、私が代わりに何を使うべきでしょうか? – Behzad

+0

http://developer.android.com/reference/android/os/PowerManager.html#FULL_WAKE_LOCK – Jakar

+0

回答ありがとうございます。 WakeLockはAPI 17では廃止予定で、FLAG_KEEP_SCREEN_ONを使用するべきですが、正しく動作しません。そのフラグを使用すると、デバイスはオンにならず、アプリケーションは起動できません。アプリで非推奨のメソッドやプロパティを使用すると大きな問題になりますか? – Behzad

0

前:wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "DoNotDimScreen");

がAFTER:wakeLock = pm.newWakeLock(PowerManager.ON_AFTER_RELEASE, "DoNotDimScreen");

関連する問題