1

私のプロジェクトでは、近接センサーを使用して画面の光を管理する必要があります。

過去3日間から、私は同じことをしようとしています。しかし、それでも私は成功していません。

私のハーフコードは正常に動作しています。近接センサーを使用して画面ライトをオフにすることができます。しかし、スクリーンライトが点灯しません。センサーを手で覆っていると、画面のライトが消えます。しかし、センサーから手を離した後、ライトが点灯しません。

私のコードは次のとおりです。

@Override
public void onSensorChanged(SensorEvent event)
{
    if(event.sensor.getType() == Sensor.TYPE_PROXIMITY)
    {
        switch (lastSensorPosition)
        {
        //case 1 will turn on screen light
        case 1:
            lastSensorPosition = 2;
            WindowManager.LayoutParams lp = getWindow().getAttributes();
            lp.screenBrightness = WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_FULL;
            getWindow().setAttributes(lp);
            break;



        //case 2 will turn off screen light
        case 2:
            lastSensorPosition = 1;
            WindowManager.LayoutParams lp1 = getWindow().getAttributes();
            lp1.screenBrightness = WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_OFF;
            getWindow().setAttributes(lp1);
            break;

        default:
            break;
        }
    }
}

皆さんからの大きな助けを期待しています...

4

2 に答える 2