第一種
xml文件中的頂層布局添加屬性:
android:keepScreenOn="true"
第二種
在Window設置flag:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
第三種
讓CPU保持運轉的方式,所以需要權限
<uses-permission android:name="android.permission.WAKE_LOCK" />
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); PowerManager powerManager = (PowerManager)getSystemService(POWER_SERVICE); if (powerManager != null) { mWakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "WakeLock"); } } @Override protected void onResume() { super.onResume(); if (mWakeLock != null) { mWakeLock.acquire(); } } @Override protected void onPause() { super.onPause(); if (mWakeLock != null) { mWakeLock.release(); } }
- PARTIAL_WAKE_LOCK :保持CPU 運轉,屏幕和鍵盤燈有可能是關閉的。
- SCREEN_DIM_WAKE_LOCK :保持CPU 運轉,允許保持屏幕顯示但有可能是灰的,允許關閉鍵盤燈
- SCREEN_BRIGHT_WAKE_LOCK :保持CPU 運轉,允許保持屏幕高亮顯示,允許關閉鍵盤燈
- FULL_WAKE_LOCK :保持CPU 運轉,保持屏幕高亮顯示,鍵盤燈也保持亮度
