Параметр флеш-камеры Android не работает - PullRequest
0 голосов
/ 24 августа 2011

Я искал несколько дней, но не могу найти способ установить режим вспышки камеры в HTC Wildfire.Тот же код работает для Nexus S. Это код, который я сейчас использую.

//Code block to toggle flash setting between on and off 

Camera.Parameters param = mCameraDevice.getParameters();
flashModes = param.getSupportedFlashModes();

if (flashModes != null) {
    currentFlashMode = param.getFlashMode();

    if (currentFlashMode.equals(Parameters.FLASH_MODE_OFF)) {
       currentFlashMode = Parameters.FLASH_MODE_ON;
    }
    else {
       currentFlashMode = Parameters.FLASH_MODE_OFF;
    }

    param.setFlashMode(currentFlashMode);
    mCameraDevice.setParameters(param);
}

Я убедился, что даже в HTC Wildfire выполняются условия if и устанавливаются параметры.К сожалению, это, кажется, не имеет никакого эффекта, и настройка камеры по умолчанию всегда используется.

Параметр вспышки не установлен ни в какой другой части кода.Я видел, как некоторые приложения успешно устанавливали режим вспышки на Wildfire, поэтому я уверен, что что-то не так делаю.Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 26 декабря 2011

Я знаю, что устройства HTC используют другой прием. Посмотрите на следующий фрагмент кода - http://www.java2s.com/Open-Source/Android/Tools/quick-settings/com/bwx/bequick/flashlight/HtcLedFlashlight.java.htm

Это взято из приложения быстрой настройки.

...