AVAudioRecorder
を使用して記録しますが、iOS 4デバイスでは正常に機能しましたが、昨日、iOS5では記録が壊れていることがわかりました。 iPhone 5シミュレーターを使用すると、次のエラーが発生しました。
2011-08-02 11:09:03.586 Moodle [7832:10103] /System/Library/Extensions/AudioIPCDriver.kext/Contents/Resources/AudioIPCPlugIn.bundle/Contents/MacOS/AudioIPCPlugIn:dlopen(/ System/Library/Extensions/AudioIPCDriver.kext/Contents/Resources/AudioIPCPlugIn.bundle/Contents/MacOS/AudioIPCPlugIn、262):シンボルが見つかりません:___CFObjCIsCollectable
このエラーの原因と修正方法を知っていますか?
このエラーは、システムフレームワークからのコンソールノイズであり、無視する必要がありますが、影響はありません。アプリがクラッシュしたり、記録に失敗した場合、実際の理由は別の場所にあります。
AVAudioRecorderは、デバッグが困難になる通常の操作中に例外をスロー(およびキャッチ)しても、iOS 5で正常に動作します。
IOS5に移行して以来、これらのエラーも発生しています。録音していませんが、AVAudioPlayerでサウンドを再生しています。これは、iOSシミュレーターのみを使用する場合のAVAudioフレームワークの問題のようです。実際のハードウェア(私の場合はiPad 2とiPad 1)でのテストでは、これらの同じエラーは発生しません。
ところで、申し訳ありませんが、これは問題を解決する解決策ではなく、問題が発生しているのはあなただけではないことを確認することです。
このエラーは、シミュレータを使用している場合にのみ発生することがわかりました。実際のデバイスでテストすると正常に動作し、エラーは発生しません。
Appleがシミュレータのバグ修正をリリースするまで、デバイスでアプリをテストします。
例外的なブレークポイントを削除することで、この問題を解決しました。
すべての例外にブレークポイントを残したい場合(これは非常に便利です)、オーディオを実行する前にif(!TARGET_IPHONE_SIMULATOR)ステートメントを使用できます。これにより、デバイスを使用している場合にのみオーディオが実行されます。
シミュレーターから音は出ませんが、音楽を必要とせず、他のコードをデバッグしたい場合に非常に役立ちます。
エラーではありません。これはブレークポイントの予想にすぎません。 XCodeに「期待値ブレークポイント」を追加した場合、この問題が発生します。主な提案は-Cocos2dプロジェクトの「期待ブレークポイント」ではありませんか。
実際のデバイスを使用してコードをテストし、次の更新を待つだけです。それが最良の選択だと思います。