先說開發環境:
Mac OS: OS X EI 10.11.5
XCode: 7.3.1
Cocos 3.10 (cocos2dx 3.10)
從5月19日以來,碰到了一個mp3動作音頻播放(playEffect)異常的問題。
現象如下:
5月19日以前的版本,所有動作音頻都能正常播放。
之後開始就有問題了:
1、用手機連接配接電腦直接調試時,所有音頻播放正常;
2、制作成iPA後釋出内測(無論是TestFlight或者是直接安裝),
有些手機能夠正常播放所有音頻,
而有的手機隻能播放部分音頻。
比如我的iPAD,就可以播放所有音頻,而iPhone手機就隻能播放部分。
其他使用者iPhone手機有些能夠正常播放,有些也是隻能播放一部分音頻。
于是開始各種懷疑,5月20日進行了OS的更新到最新10.11.5,時間上好想不對。
c++代碼問題?不應該,程式邏輯處理什麼都正常,而且代碼對比舊版本反複檢查沒有發現疑點。
音頻檔案有問題?也不像呀,一直是這一套音頻檔案,沒有任何修改。
加Log、履曆等各種分析,都沒發現問題所在,
百度谷歌都求了,沒有發現有相同問題的現象,苦惱了4天,第五天的時候,我都快崩潰了,還是調查不出原因。
打電話給蘋果開發者熱線,他們建議我檢查一下音頻檔案的格式是不是不符合規範。
還有李老師建議我把動作音頻換成wav檔案試試。我都嘗試了,問題依舊。
不得已,隻好找了一個4月份的版本來進行測試,分析原因。
從AI代碼不變,UI用最新的,到AI代碼最新,UI用舊的,
發現UI用舊的代碼時,音頻播放沒有問題了!
分析差別,
原來舊UI的音頻是以Group的方式加入到項目中的(顯示為黃色),
新UI的音頻是用建立檔案夾方式加入到項目中(顯示為藍色目錄)。
想到可能是因為音頻檔案引入的問題導緻,于是在新AI代碼+新UI代碼下,
修改音頻素材的加入方式為Group方式。
結果==>音頻播放正常了!!!!
5天的奮鬥,我淚噴,直接崩潰了!
我強烈的感覺這是Cocos2dx引擎的問題,但是不知道我的哪個動作引發了這個問題。
問題解決,我可以睡好覺了,希望Cocos2dx的大神能夠從我的描述中看到問題所在,能夠給予準确地指點。
也希望碰到此類問題的夥伴能有一個啟發。