Lampa błyskowa wyłącza się podczas zmiany orientacji

Stworzyłem aplikację na Androida, która pozwoli użytkownikowi włączyć i wyłączyć lampę błyskową, naciskając przycisk. Jeśli użytkownik włączy lampę błyskową i zmieni orientację, światło zostanie wyłączone. Dlaczego tak się dzieje. Zobacz poniższy kod, z którego korzystałem.

cam = Camera.open();
    final Parameters p = cam.getParameters();

    torch_switch = (Button)findViewById(R.id.torch_switch);
    torch_switch.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {


            // TODO Auto-generated method stub
            if(isLightOn) {
                torch_switch.setText("Switch ON Torch");
                p.setFlashMode(Parameters.FLASH_MODE_OFF);
                cam.setParameters(p);
                cam.stopPreview();
                isLightOn = false;

            } else {
                torch_switch.setText("Switch OFF Torch");
                p.setFlashMode(Parameters.FLASH_MODE_TORCH);
                cam.setParameters(p);
                cam.startPreview();
                isLightOn = true;
            }
        }
    });

questionAnswers(2)

yourAnswerToTheQuestion