在Activity的onCreate()中:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock mWakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
// onResume() 中调用:
mWakeLock.acquire();
// onPause() 中调用释放WakeLock对象
mWakeLock.release();
方法二: use the window flag FLAG_KEEP_SCREEN_ON
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock mWakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
// onResume() 中调用:
mWakeLock.acquire();
// onPause() 中调用释放WakeLock对象
mWakeLock.release();
方法二: use the window flag FLAG_KEEP_SCREEN_ON
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
本文介绍了两种在Android应用中保持屏幕常亮的方法:一是通过使用PowerManager.WakeLock对象来控制屏幕状态,需要在Activity的onCreate(), onResume()及onPause()等生命周期方法中进行相应的获取和释放操作;二是直接利用Window的FLAG_KEEP_SCREEN_ON标志实现相同目的。
1万+

被折叠的 条评论
为什么被折叠?



