我创建了一个带有空 Activity 的目标 API 15 (ICS) 的新项目。我添加了清单权限:
<uses-permission android:name="android.permission.WAKE_LOCK" />
我将代码添加到onCreate()
:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
PowerManager pm = (PowerManager) getSystemService(getApplicationContext().POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Tag");
wl.acquire();
WindowManager.LayoutParams params = getWindow().getAttributes();
params.flags |= WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = 0;
getWindow().setAttributes(params);
}
但是设备没有任何反应。根据PowerManager 文档,我预计屏幕会(立即)熄灭。那么,我做错了什么还是这不起作用?
编辑:
我尝试了 Ashish Ranjan 的建议,screenBrightness
在获取 WakeLock 后手动设置,但这也不起作用。