【Android适配问题集锦-相机类】Camera拍照时快门咔嚓声适配问题
来源:互联网 发布:淘宝护肤品摄影 编辑:程序博客网 时间:2024/05/15 15:52
现在Android手机一般都会带有照相功能,有很多朋友就发现手机照相时快门声音很响,想关又关不掉。。。。。不过话说回来,静音拍照你想做啥?
来到主题上,因为网络上有很多关于“删除或修改快门声音文件是关闭快门声的方法”的内容,所以我就不赘述了。今天我想和大家说的是:在开发中,针对camera的静音功能我们会遇到哪些机型兼容问题?
从Google官方API中也没有明确的指出关于相机拍照时快门声音是如何控制的,关于shutter第一个参数API只是解释为在相机拍照的瞬间进行回调,并没有明确说明是否是对拍照声音的操作。
当调用Camera的takePicture方法进行拍照时,为了防止偷拍等行为,会发出快门拍照的声音,而且此声音无法通过调节音量进行关闭,但由于不同机型不同Rom的差别,使得各个厂商针对此声音的处理不同。
至此我总结了使用takePicture中ShutterCallback来控制拍照声音的三种情况:
1、当takePicture传入第一个参数ShutterCallback(ShutterCallback参数不为空)时,系统会发出快门拍照的声音。
例如HTC 3D EVO,因此这款手机的快门声音可以通过此方法进行控制。
2、无论是否传入ShutterCallback参数系统都没有快门拍照的声音。
例如LG P720手机就有此问题,此类手机问题比较严重,手机厂商自行修改了Rom,导致任何情况下调用takePicture方法进行拍照都没有声音,通过反编译系统照相机可以看出,系统照相机拍照声音是可以随意控制的,当需要声音时直接在应用中调用SoundPool发出拍照音效,否则静音处理。所以我们在设计应用时针对这类机型也可以自行控制拍照声音。
而步步高vivo Y1手机同样有此现象,但和LG不同的是,这款机型的厂商修改了Rom,把拍照声音的控制写在了HAL层中,调用声音的接口没有暴露出来,我们只能通过反射进行对声音的设置。
3、无论是否传入ShutterCallback参数系统都有快门拍照的声音。
例如华为Y220t,这类手机比较麻烦,通过反编译Framework层关于拍照声音是在硬件抽象层(HAL)实现的,所以应用开发无法通过代码控制拍照声音的播放,只能给以相应的提示告诉用户当前静音无效,拍照时会发出快门的声音。
综上所述,使用takePicture中ShutterCallback来控制快门声音时需要针对不同机型做不同处理。
- 【Android适配问题集锦-相机类】Camera拍照时快门咔嚓声适配问题
- 那些年,我们在Android机型适配上遇到的坑丨之Camera拍照时快门咔嚓声
- android相机camera拍照
- Android相机Camera相关问题
- android:用Camera拍照,解决某些手机利用自带相机崩溃的问题
- 调用Android相机拍照的问题
- android Camera 拍照的两个问题
- android Camera 拍照的两个问题
- android:camera rotate90 使用相机时旋转90度问题
- Android Camera出现无法连接相机问题
- android 拍照+裁剪(解决部分相机拍照角度问题)
- Android camera相机开发拍照功能
- Android7.0 6.0 相机拍照,系统裁剪适配问题
- ios去除自定义相机拍照快门声音
- 相机拍照Camera
- 系统相机拍照剪辑问题
- Camera拍照声音消除问题
- camera拍照过程中花屏问题
- 面试
- C++Primer第五版 12.1.5节练习
- Android 的接口回调事件
- Python 错误处理
- CSS水平居中
- 【Android适配问题集锦-相机类】Camera拍照时快门咔嚓声适配问题
- java满天星系列之(二)JFrame实现满天星效果 泽0715
- android基础学习007_android 应用启动界面SplashActivity
- 通过adb shell 向android系统发送虚拟按键
- 自制脚本语言(9) 扩充的语法
- aduioRecorde录制MP3文件
- Linux 下安装nginx 详解(新手)
- myeclipse常用快捷键(泽0715)新…
- 浅谈HTTP中Get与Post的区别(泽071…