Ответ 1
Это обходной путь, который я использую для Samsung Galaxy Ace для фонарика. Я по существу непрерывно автоматически фокусирую камеру, потому что светодиод включается только во время автофокуса.
AutoFocusCallback autoFocusCallback = new AutoFocusCallback();
autoFocusCallback.setHandler(handler, message);
//Log.d(TAG, "Requesting auto-focus callback");
camera.autoFocus(autoFocusCallback);
class AutoFocusCallback implements Camera.AutoFocusCallback {
private Handler autoFocusHandler;
private int autoFocusMessage;
void setHandler(Handler autoFocusHandler, int autoFocusMessage) {
this.autoFocusHandler = autoFocusHandler;
this.autoFocusMessage = autoFocusMessage;
}
public void onAutoFocus(boolean success, Camera camera) {
Message message = autoFocusHandler.obtainMessage(autoFocusMessage, success)}
autoFocusHandler.sendMessage(message)
autoFocusHandler = null;
}
}
TORCH_MODE_ON предпочтительнее, но поскольку он не поддерживается, это лучший способ, который я нашел, если вы просто должны иметь фонарик.