android – 在Glass GDK沉浸式应用程序中打开活动时,如何使屏幕变亮?

前端之家收集整理的这篇文章主要介绍了android – 在Glass GDK沉浸式应用程序中打开活动时,如何使屏幕变亮?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个GDK沉浸式应用程序,其中启动器Activity获取了一个SCREEN_DIM_WAKE_LOCK WakeLock.该应用程序还有一个服务,它将接收聊天消息并启动一个活动的Intent来显示每个消息.每当打开消息Activity时,我想让屏幕变亮.但是,我发现的所有方法似乎都不起作用.

例如,将以下内容添加到onResume中无效:

Settings.System.putInt(getContentResolver(),SCREEN_BRIGHTNESS_MODE,SCREEN_BRIGHTNESS_MODE_MANUAL);

    WindowManager.LayoutParams lp = getWindow().getAttributes();
    lp.screenBrightness = 1.0f;
    getWindow().setAttributes(lp);

为了更好地说明问题,这里是我的应用程序中的事件序列:

>活动A开始并获取SCREEN_DIM_WAKE_LOCK.活动A在短时间后变暗.
>服务B通过网络接收聊天消息,并为活动C创建一个Intent
>活动C打开,如上所示设置屏幕亮度,但仍保持灰色

如何让屏幕变亮?

解决方法

通过在onResume中获取带有ACQUIRE_CAUSES_WAKEUP标志的SCREEN_BRIGHT_WAKE_LOCK,我能够找到解决方案.例如:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP,"My Tag");
wl.acquire();
//..screen will stay on during this section..
wl.release();

猜你在找的Android相关文章