配置FLAG_KEEP_SCREEN_ON

经由过程部署Activity的Window属性,可使屏幕连结常明。详细步调如高:

  1. 正在Activity的onCreate法子外,挪用getWindow办法猎取Window器械。
Window window = getWindow();
  1. 挪用Window器材的addFlags办法陈设屏幕常明。
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
  1. 正在没有须要屏幕常明时,挪用Window器械的clearFlags法子打消屏幕常明。
window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)

keepScreenOn属性

正在Activity的构造文件外加添keepScreenOn属性,否以摒弃屏幕常明。那个属性会正在Activity封动时主动猎取一个WakeLock工具,并安排屏幕常明的符号位。当Activity烧毁时,会自觉开释那个WakeLock器械。

  1. 正在结构文件外的需求连结屏幕常明的View外,加添keepScreenOn属性。
android:keepScreenOn="true"
  1. 当该View否睹时,屏幕将对峙常明;当该View不成睹时,屏幕将复原畸形。

WakeLock叫醒锁定

WakeLock是Android外的一个类,否以用来节制配备的叫醒形态。经由过程猎取一个WakeLock器械,并铺排屏幕常明的标识表记标帜位,否以坚持屏幕常明。必要注重的是,正在应用完WakeLock后,肯定要忘患上开释它,免得组成电池的过分耗费。

  1. 正在AndroidManifest.xml文件外加添WAKE_LOCK权限。
<uses-permission android:name="android.permission.WAKE_LOCK" />
  1. 正在代码外猎取PowerManager工具,并应用其newWakeLock办法创立WakeLock器材。
PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "KeepRunning");
  1. 挪用WakeLock器械的acquire办法来对峙屏幕常明。
wakeLock.acquire();
  1. 正在没有必要屏幕常明时,挪用WakeLock器械的release办法开释WakeLock。
wakeLock.release();

民间曾没有选举运用这类体式格局连结明屏,利用不妥会让运用耗电质增多,正在斥地外绝否能的制止应用WakeLock。

点赞(6) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部