虽然Camera在Android7.0以上已经不怎么支持了,但为了适配低配手机,Camera还是有点用的。在Zxing框架的使用时,发现浅颜色的二维码识别不了,查了下网上的资料,基本没人提出过,感觉到很奇怪,所以没人有这个需求么。。
这些都是前提,然后我探索了下Camera中的Parameters中的属性,看能不能适配浅颜色的,总结一下属性;
camera.setDisplayOrientation(90); 默认为横屏,设置为竖屏
parameters.getSupportedFlashModes() 获取闪光灯模式 parameters.setFlashMode(flashMode);
parameters.getSupportedFocusModes() 获取聚焦模式 parameters.setFocusMode(focusMode); 设置聚焦模式
parameters.getSupportedColorEffects() 获取颜色影响 (重点说下这个属性下的各个值是干什么的,因为我研究的就是颜色这方面的)
public static final String EFFECT_NONE = "none"; (无)
public static final String EFFECT_MONO = "mono"; (灰度化,但扫不出来)
public static final String EFFECT_NEGATIVE = "negative"; (颜色会完全相反)
public static final String EFFECT_SOLARIZE = "solarize"; (曝光过度)
public static final String EFFECT_SEPIA = "sepia"; (黑白)
public static final String EFFECT_POSTERIZE = "posterize"; (色调分离)
public static final String EFFECT_WHITEBOARD = "whiteboard";(整个背景都会变白)
public static final String EFFECT_BLACKBOARD = "blackboard"; (整个背景都会变暗)
public static final String EFFECT_AQUA = "aqua";(画面变成了浅蓝色)