【问题标题】:cocos2d-iphone games stop playing background music sometimescocos2d-iphone 游戏有时会停止播放背景音乐
【发布时间】:2013-01-18 17:15:37
【问题描述】:

cocos2d-iphone 1.0.1.

我在我的设备中安装了其他 cocos2d-iphone 游戏时注意到了这一点,例如 Kingdom Rush。

基本上,大多数时候,音频都很好(几乎总是)。但是突然,在一个意想不到的时刻,背景音乐停止播放,只有音效起作用。有时,杀死应用程序并不足以修复它。

在我的cocos2d-iphone 游戏中也会发生这种情况,控制台中没有任何提示。我使用SimpleAudioEngine 播放背景音乐和音效。

杀死我的应用程序,重新启动 Xcode 不会修复它。我通常只是忽略这个问题,在不久的将来,它突然消失了。我怀疑重启设备往往会解决这个问题,但这已经超出了重点:我应该知道为什么会发生这种情况。

我也尝试过预加载我的背景音乐。不会改变任何事情。

我相信我在使用 .mp3 和 .wav 格式时都遇到过这个问题。

为什么会发生这种情况?

【问题讨论】:

    标签: cocos2d-iphone


    【解决方案1】:

    不知道具体原因,但我能想到一些:

    • 内存警告导致音频流中断
    • CocosDenshion 未正确处理音频中断(日历通知、传入短信/电话)
    • 播放其他流媒体音乐(例如视频播放器、iPod 音乐播放器)
    • 音乐不是流式传输而是缓冲的,这意味着音乐正在与所有其他效果争夺音频缓冲区 - 最终播放的音频效果如此之多,以至于旧的缓冲区必须取消播放(可能是音乐)才能允许播放新效果
    • 有缺陷的设备(因为它发生在其他应用程序中......)
    • CocosDenshion 中的错误(查看 cocos2d 问题跟踪器和论坛以了解任何未解决的音频错误)

    如果您使用 playBackgroundMusic API 流式传输音乐而不是缓冲音乐,我认为您可以排除后者。

    【讨论】:

      猜你喜欢
      • 2016-04-16
      • 1970-01-01
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多