Android Camera快门音静音问题


android4.2之后Camera的framework层Camera.java里面加上了enable或者disable快门音的接口:

enableShutterSound(boolean enabled)

通过在app里调用enableShutterSound(true)或者enableShutterSound(false)就可以实现拍照的时候开启或者关闭快门音。

但是需要注意的是:很多机器是强制快门音的,也就是说你在app里调用上述接口也许根本不起作用,你明明enableShutterSound(false)了,但是拍照的时候快门音照样响起,原因在于烧制的系统版本里面有一个值被写死了:ro.camera.sound.forced = 1

可以adb shell进到device里面,getprop ro.camera.sound.forced如果得到是0,说明快门音可以被静音处理,调用enableShutterSound(false)能起作用;如果是1,说明快门音被强制设置了,这时调用enableShutterSound(false)就不起作用。

 

要想让Camera的快门音能够被静音,就需要在编译供烧机的系统版本之前,将ro.camera.sound.forced设成0,各家硬件平台定义这个值的地方可能稍有差异,但是大致都在以下位置:

(1)Intel 一般在 vendor/intel/common/init.common.rc里面

(2)qcom 一般在device/qcom/YOURPLATFORM/system.prop里面

(3)Samsung 一般在device/YOURPROJECT/system.prop里面

(4)MTK 一般在mediatek/config/YOURPROJECT/system.prop里面


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM