我试图制作一个基于传感器的音频配置文件管理器,它从ACCELEROMETER&然后,LIGHT传感器根据条件确定条件并切换轮廓。我能够使用单个传感器,但无法使用两个。这是我的代码,
@Override
public void onSensorChanged(SensorEvent event) {
boolean isOn = false;
boolean isFlipped = false;
boolean isFront = false;
boolean isOnPocket = false;
Sensor mySensor = event.sensor;
long curTime = System.currentTimeMillis();
if (mySensor.getType() == Sensor.TYPE_LIGHT) {
float light = event.values[0];
if ((curTime - lastUpdate) > 100) {
lastUpdate = curTime;
if (light<=100) {
isOn = true;
}else{
isOn = false;
}
}
}
if (mySensor.getType() == Sensor.TYPE_ACCELEROMETER) {
float x = event.values[0];
float y = event.values[1];
float z = event.values[2];
if ((curTime - lastUpdate) > 100) {
lastUpdate = curTime;
if (x<=0 && y<=0 && z<=-10) {
isFlipped=true;
}else if (x<=0 && y<=0 && z<=+9){
isFront=true;
}else if (x<=2 && y<=-7 && z<=-1){
isOnPocket=true;
}
}
}
if(isFlipped && isOn){
myAudManHolder.silent();
}else if(isFront && !isOn){
myAudManHolder.ring();
}else if(isOnPocket && isOn){
myAudManHolder.vibrate();
}
}
我的代码有什么问题吗?我非常需要帮助。你的帮助会很明显。 TNX。