Android 安卓设备被代码锁定
任何一个如何显示屏幕的人都将通过编码在android设备上变暗。。。 我使用了下面的代码,但它不能正常工作。 当我点击“开”或“关”按钮时,我想查看android设备屏幕是否变暗或变亮,但这并没有发生请帮助我Android 安卓设备被代码锁定,android,Android,任何一个如何显示屏幕的人都将通过编码在android设备上变暗。。。 我使用了下面的代码,但它不能正常工作。 当我点击“开”或“关”按钮时,我想查看android设备屏幕是否变暗或变亮,但这并没有发生请帮助我 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); off =
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
off = (Button) findViewById(R.id.btnBackLightOff);
on = (Button) findViewById(R.id.btnBackLightOn);
final PowerManager pm = (PowerManager) this.getSystemService(Context.POWER_SERVICE);
// mWakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK|PowerManager.ON_AFTER_RELEASE, "");
off.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("back light off method");
mWakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
mWakeLock.acquire();
}
});
on.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
System.out.println("on method");
mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "My Tag");
mWakeLock.acquire();
}
});
}
@Override
public void onDestroy() {
System.out.println("on destroy method");
this.mWakeLock.release();
super.onDestroy();
}
可以显式设置亮度值,如下所示:
setBright((float) 0.1);//tell screen to go on with 10% brightness
public void setBright(float value) {
Window mywindow = getWindow();
WindowManager.LayoutParams lp = mywindow.getAttributes();
lp.screenBrightness = value;
mywindow.setAttributes(lp);
}
在代码中,您正在使用PowerManager获取唤醒锁。 这意味着,在屏幕超时后,它将保持暗淡,而不是完全关闭,并在用户交互后恢复到全亮度 如果要立即调暗屏幕,可能需要使用此处的代码, 您需要权限才能这样做。 使用权限android:name=“android.permission.WRITE\u设置”>