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性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...