سؤال

I am currently utilizing the below referenced code for a wake lock on an alarm notification activity. However, SCREEN_DIM_LOCK has been depreciated. So, what should I be replacing it with?

//Instance of wake lock for AlarmActivity
PowerManager pm = (PowerManager) this.getSystemService(Context.POWER_SERVICE);
wakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "MyWakeLock");
هل كانت مفيدة؟

المحلول

Android Developer documentation specifies that SCREEN_DIM_WAKE_LOCK should be replaced with FLAG_KEEP_SCREEN_ON. After doing a bit of digging, I turned up this...

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

It should be placed in the onCreate() method.

نصائح أخرى

It can be replaced for FLAG_KEEP_SCREEN_ON, as the javadoc says, but this will prevent the screen from dimming - it will remain bright.

This API should not have been deprecated - it is still needed in some cases, such as the "dim" case.

See also this.

Just use

WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON

In place of

PowerManager.SCREEN_DIM_WAKE_LOCK
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top