長い間、画面がスリープ モードにならないようにする方法を知っていると思っていましたが、アクティビティで次のコードを使用するだけでした。
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
ただし、これは、電話が「開発者モード」の場合、つまり USB デバッグ (設定 --> 開発者向けオプション --> USB デバッグ) が有効/チェックされている場合にのみ機能することに気付きました。次に、上記のコードは実際に画面/デバイスを停止してスリープ状態にします。
そのデバッグがチェックされていない場合、私の画面は明日がないようにスリープ状態になります。デバイスで Android 4.04 を実行していますが、
android:minSdkVersion="12"
android:targetSdkVersion="16"
編集
Commonsware の提案でテストし、コードに setKeepScreenOn() を追加したので、次のようになります。
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
View root = findViewById(android.R.id.content);
if (root != null)
root.setKeepScreenOn(true);
このコードが実際に実行されることも確認しました。しかし、それは何も変わりません。