¿Cómo detectar la orientación de mi pantalla en la pantalla de bloqueo vertical en Android?

Quiero encontrar la orientación de la pantalla de la cámara en el modo de orientación vertical bloqueada, bueno, estoy usando la cámara en mi clase de fragmentos y ya configuré la orientación de la pantalla como vertical, pero el problema al que me enfrento es cuando cambio la cámara de vertical a vertical el paisaje está cambiando y necesito configurar el botón de captura visible solo cuando la cámara está en modo vertical. ¿Alguien puede ayudarme a obtener los cambios de orientación en modo vertical? Abajo está mi código:

getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

sensorManager.registerListener(new SensorEventListener() {

    int orientation=-1;;

    @Override
    public void onSensorChanged(SensorEvent event) {
        if (event.values[1] < 6.5 && event.values[1] > -6.5) {
            if (orientation!=1) {
                Log.d("Sensor", "Landscape");
            }
            orientation = 1;
        } else {
            if (orientation!=0) {
                Log.d("Sensor", "Portrait");
            }
            orientation = 0;
        }
    }

    @Override
    public void onAccuracyChanged(Sensor sensor, int accuracy) {
    }
}, sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_GAME);

if (orientation == 0) {
    // capture button visisble
} else {
    // invisible
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta