[英]Use Proximity Sensor in android- turn screen off
我想靠近臉時關掉屏幕。 我用它來關閉屏幕。
但我有一個錯誤:在這一行找不到符號 :
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
和
params.f lags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
這是我的代碼:
import org.qtproject.qt5.android.bindings.QtActivity;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.widget.Toast;
import android.os.PowerManager;
import android.view.WindowManager;
public class ProximitySensor extends Activity implements SensorEventListener{
//SensorManager lets you access the device's sensors
//declare Variables
private SensorManager sensorManager;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//create instance of sensor manager and get system service to interact with Sensor
sensorManager= (SensorManager)getSystemService(Context.SENSOR_SERVICE);
WindowManager.LayoutParams params = getWindow().getAttributes();
Sensor proximitySensor= sensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);
.
.
.
// called when sensor value have changed
@Override
public void onSensorChanged(SensorEvent event) {
WindowManager.LayoutParams params = this.getWindow().getAttributes();
if(event.sensor.getType()==Sensor.TYPE_PROXIMITY){
if(event.values[0]==0){
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = 0;
getWindow().setAttributes(params);
}
else{
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = -1f;
getWindow().setAttributes(params);
}
}
}
}
您需要添加此導入:
import android.view.WindowManager.LayoutParams;
嘗試為LayoutParams.FLAG_KEEP_SCREEN_ON;
添加前綴LayoutParams.FLAG_KEEP_SCREEN_ON;
部分。 這可能解決了這個問題: params.flags |= WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.