展会信息港展会大全

Camera shutter sound 有时off,有时On 声音不统一,时有时无
来源:互联网   发布日期:2015-09-29 10:18:23   浏览:2732次  

导读:App 出现的问题为: 录制video 时,shutter sound的声音不统一,时有时无。 进入Camera应用-- 录像开始 -- 点击shutter时,无shutter sound -- 录像停止时,click shutter,无shutter sound --......

App 出现的问题为:

录制video 时,shutter sound的声音不统一,时有时无。

进入Camera应用--> 录像开始 --> 点击shutter时,无shutter sound --> 录像停止时,click shutter,无shutter sound --> 播放录制的视频 --> back键,返回到取景界面 --> 再次录像 ,有shutter sound.

分析:

只要点击back键,再次录制视频的时候,shutter sound不是预期的结果,推断出在onResume()方法中,没有从preference.xml中取KEY_SHUTTER_SOUND的值,而发生来默认行为。查看代码

String cameraSound = mPreferences.getString(CameraSettings.KEY_SHUTTER_SOUND,

getString(R.string.pref_camera_shutter_sound_default));

if (cameraSound != null) {

int shutterSound = cameraSound.equals("on") ? 1 : 0;

mCameraDevice.setCameraShutterSound(shutterSound);

}

发现上述代码出现在onCreate()方法中,而onResume()无类似的代码。将此代码从onCreate()方法中move到onResume()方法中,问题得到解决。

至此深刻地理解了Activity的生命周期。

从上图可知, 第一次启动Camera,进入取景界面,并开始录像,onCreate()方法得以执行,则shuttersound的value会从 preference.xml中取得,接着用户点击播放录制的视频,然后back键回到取景的界面,再次录像,本次click shutter的时候,执行的是onResume()方法,而onResume()方法中shuttersound并没有从preference.xml 中进行取值,而是调用默认的

R.string.pref_camera_shutter_sound_default

而我已经在string.xml中设定该值为on。

赞助本站

人工智能实验室

相关热词: Camera

相关内容
AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港