「.NET for Androidでディスプレイをスリープさせない」の版間の差分
Administrator (トーク | 投稿記録) 細 Administrator がページ「Xamarin.Android/ディスプレイをスリープさせない」を「Xamarin.Androidでディスプレイをスリープさせない」に移動しました |
Administrator (トーク | 投稿記録) |
||
| 23行目: | 23行目: | ||
== 関連項目 == | == 関連項目 == | ||
* [[Xamarin. | * [[Xamarin.Androidで画面の向きを固定する]] | ||
== 参考文献 == | == 参考文献 == | ||
2021年3月5日 (金) 02:24時点における版
概要
無操作でもディスプレイをスリープさせたくない場面も多い。 たとえばMonoGameで作るAndroid向けのゲームなどである。
解決策:KeepScreenOn
アクティビティに「WindowManagerFlags.KeepScreenOn」というフラグを設定すると一時的にディスプレイのスリープを抑制できる。この方法は権限が不要であり、アクティビティが遷移する際に自動的に解除される。MonoGameでもこの方法は有効である。
public class Activity1 : AndroidGameActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// ディスプレイをスリープさせない
this.Window.AddFlags(WindowManagerFlags.KeepScreenOn);
}
}解決策:wakelock
この方法は権限が必要であり、ひとたびディスプレイのスリープを抑制するとアクティビティが遷移しようが何をしようが明示的に解除しない限り延々と抑制される。あまりオススメできない。 よって省略する。