CocoStudio开发之背景音乐播放两秒就没声音问题-阿里云开发者社区

开发者社区> 技术小甜> 正文

CocoStudio开发之背景音乐播放两秒就没声音问题

简介:
+关注继续查看

问题

    最近在使用COCOSTUDIO 1.3开发时,遇到如题所示的疑惑--在游戏中想念场景切换时出现背景声音播放两声就没有了(不是不播放,只是播放一少部分!)。

答案

    后来跟踪发现原因在于(至少我的情况如此),我在场景的onExit方法中每次都调用了SceneReader::purge()。而这个方法实现代码是:

1
2
3
4
5
6
7
8
9
void SceneReader::purge()
{        
    cocos2d::extension::DictionaryHelper::shareHelper()->purgeDictionaryHelper();
    TriggerMng::getInstance()->destroyInstance();
    _pfnSelector = NULL;
    _pListener = NULL;
    CocosDenshion::SimpleAudioEngine::sharedEngine()->end();
    CC_SAFE_DELETE(_sharedReader);
}

大伙看清上面的第7行了吧,就是它。每次在调用purge方法时停止了系统声音的播放。
找到了原因,就不再调用了吗?情况不一定。现在,我的几个场景使用了UI编辑器设计的,即我没有使用场景编辑器设计,所以我在这几个场景间切换时(场景的onExit方法中)不需要调用SceneReader::purge()(只需要使用GUIReader::purge())。于是,我去掉这一调用就OK了。

但,另外一种可能的现实是,如果是多个使用场景编辑器设计的场景间切换时该怎么操作呢?我的办法是:去掉转场切换动画,继续使用SceneReader::purge()。因为去掉转场切换调用,则想念两个场景的方法调用是:firstScene::onExit()----->secondScene::onEnter()。

补充

我的背景声音没有加入到场景编辑器中,而是使用cocos2d-x方法直接编码方式调用的。
另外,本文只是大致给出了CocoStudio开发过程中背景音乐播放两秒就没声音的问题。但是,我只是在win32下这样操作的,在Android,iOS等环境下没有实际测试过。











本文转自朱先忠老师51CTO博客,原文链接:http://blog.51cto.com/zhuxianzhong/1439658 ,如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
基于声网的音视频SDK和FreeSWITCH开发WebRTC2SIP Gateway 遇到的坑(三)
基于声网的音视频SDK和FreeSWITCH开发WebRTC2SIP Gateway 遇到的坑
322 0
仿酷狗音乐播放器开发日志二十五 duilib右键事件的不足的bug修复
转载请说明原出处,谢谢~~        虽然仿酷狗的各个菜单早就写好了,但是一直没有附加到程序里。今天把菜单和播放列表控件关联时发现了问题。        和播放列表相关的菜单有三个,分别是每个音乐项目控件相关的菜单、分组的菜单、音乐电台的菜单。
872 0
06.Eclipse下Ndk开发(使用fmod播放声音)
(创建于2017/12/26) 1.搜索fmod,并下载代码 5199906.png 2.拿到Android相关的代码后,打开目录结构 5291234.
1006 0
07.Android Studio下Ndk开发(使用fmod播放声音)
(创建于2017/12/28) 已实现 注意几点: 1.main下cpp文件夹放置c文件和相关头文件 2.main下JniLibs文件夹放置第三方so文件 3.
1053 0
仿酷狗音乐播放器开发日志二十二 动态调色板控件第二版(性能大幅提升附源码)
转载请说明原出处,谢谢~~         在上次写的博客《仿酷狗音乐播放器开发日志二十一 开发动态调色板控件(附源码)》发布后,我在群里和网友讨论这个控件的性能和优 缺点,发现了他很多不足,还有很多提升空间,之后我简单的修改了代码提升了控件的响应速度。
853 0
基于声网的音视频SDK和FreeSWITCH开发WebRTC2SIP Gateway 报文设计 (二)
基于声网的音视频SDK和FreeSWITCH开发WebRTC2SIP Gateway 报文设计
184 0
Visual Studio 2010 起始页中 不显示最近使用的项目问题,解决办法
最近新装了vs2010,发现打开vs2010 后 起始页面中的最近使用的栏目中 并未显示最近加载的项目 解决办法如下: 运行 regedit 打开下面的键值: HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policie...
478 0
招聘iOS开发,老板必问的5个问题 - 所以常规招聘开发老板都不出面
招聘iOS开发,老板必问的5个问题 iOS开发和许多其他软件亚文化一样,起源于少数开发者,但从2008年苹果对外发布SDK,供第三方应用开发者开发iPhone、iPad等iOS应用开始,iOS应用开发呈现着水涨船高的势头。
930 0
+关注
6323
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载