2011-02-06 14 views
0

AVAudioPlayerオブジェクトにメモリの問題がありますか?シミュレータでAVAudioPlayerを使用しているときにメモリリークが発生しています。私はAVAudioPlayerをどのように作成したかは関係ありません。私はinitWithContentsOfURLInitWithDataを使用しました。以下はコードのスニペットです。デバイス上でそれをテストする際のGithub https://github.com/docchang/MemoryLeakAVAudioPlayerAudioToolboxライブラリのメモリリークAVAudioPlayer

NSError *error; 
NSURL *playerURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"Bell" ofType:@"m4a"]]; 
self.playerWithURL = [[AVAudioPlayer alloc] initWithContentsOfURL:playerURL error:&error]; 
if (!playerWithURL) { 
    NSLog(@"no %@.%@: %@",@"Introduction2", @"m4a", [error localizedDescription]); 
} 
playerWithURL.volume = 0.9f; 
playerWithURL.numberOfLoops = 0; 
[playerWithURL play]; 

@全プロジェクトは、しかし、何のメモリリークはありません。この問題は、AudioToolBoxライブラリの問題に傾き始めていますが、単にstackoverflowの人々と確認したいのです。

答えて

3

AVAudioPlayerを使用しているときに同じメモリリークが発生しています。 Web上のAVAudioPlayerとVideoPlayerライブラリでこのリークが似たような出来事についていくつかの記事を見ました。 (アップルを非難する)ライブラリ自体に問題が表示されます。

  1. iPhone: OpenAL & AudioToolbox leak
  2. https://appcelerator.lighthouseapp.com/projects/32238/tickets/1992-ios-strange-behavior-and-intermittant-mem-leak-on-embedded-video-test-case

編集:また、ターゲットデバイス上で実行されたときに漏れが消える見ます。

0

同じ問題が発生しているので、テストを実行しました。 AVAudioPlayerを使用してサウンドを再生したときに、アプリケーションの開始時にインストゥルメントがリークしていました。それは最初に一度だけ登録されました。その後に生成された音にはそれ以上のリークはありませんでした。

私のiPhoneでInstrumentを使用して同じアプリケーションビルドを実行したとき、リークはまったくありませんでした。

私は、iOS 11.2.5を実行しているとXcode展開ターゲットは11.0

それだけでXcodeのバグであるように見えますが、MacOSのに関連している可能性があります。