0

iOS で AVAudioPlayer を使用してサウンドを再生した後、スレッドが実行を続け、約 3% の CPU を消費することがわかりました。HALのもの(ハードウェア抽象化レイヤー)に関連しているようです。完全なクリーンアップを実行してアプリをアイドル状態にする方法は? これはローカル変数で参照され、プレイが終了した後に適切に割り当て解除されます。AVAudioPlayer をインスタンス化するだけで、play メソッドを呼び出さないと、そのスレッドが作成されないことに気付きました。そして、アプリはアイドル状態です。何か案は?

注意: この問題はシミュレーターのみにあることに気付いたので、この質問は非推奨です。ここで説明を見つけましたhttp://lists.apple.com/archives/coreaudio-api/2006/Jul/msg00022.html

4

2 に答える 2

0

以下のコードを試して、オーディオ プレーヤー オブジェクトを nil に設定してください。

NSError *error;
[[AVAudioSession sharedInstance] setActive:NO withFlags:AVAudioSessionSetActiveOptionNotifyOthersOnDeactivation error:&error];
于 2013-07-01T13:27:08.573 に答える