ほぼメモです
症状
- setFlashMode() で撮影時にフラッシュが点かないようにしてるのに暗い所で撮影すると点いてしまう
- setExposureCompensation() で露出補正のレベルを変えてるのに変化がない
- Nexus5ではこうなるのに他端末(Xperiaなど)ではこうならない
原因
setSceneMode() を呼んでいることが原因でした
Android Developersによると、
Changing scene mode may override other parameters (such as flash mode, focus mode, white balance).
つまり、「このメソッドを呼び出すと、フラッシュ、フォーカス、ホワイトバランスとかのパラメータが上書きされるかもしれんぞ」だそうです
そしてバッチリ上書きされてたってワケですHAHAHA
結論
Android Developersはちゃんと読もう