0

アプリでサウンドが再生されない理由を理解しようとしているので、可能な限り単純な実装であると思うものを作成しました。

  NSError *error;
   NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:@"canary-trills" ofType:@"wav"];
  NSLog(@"string=%@", soundFilePath);
  NSURL *url = [[NSURL alloc] initFileURLWithPath:soundFilePath];
  NSLog(@"URL=%@", url);
  AVAudioPlayer *avPlayer = [[AVAudioPlayer alloc]
                            initWithContentsOfURL:url error:&error];
  [avPlayer prepareToPlay];
  BOOL success = [avPlayer play];
  NSLog(@"The sound %@ play", success ? @"did" : @"didn't");

コンソールによると、リソースを検出し、URLを正しく作成しているように見えます。プレイコールでさえ成功を示します。ただし、シミュレーターでもデバイスでもサウンドは再生されません。

4

1 に答える 1

2

AVAudioPlayer は保持されず、範囲外になりました。

追加: @property (強力、非アトミック) AVAudioPlayer *audioPlayer;

クラスに移動し、そのメンバーを使用して問題を解決しました。

于 2013-03-09T18:58:41.440 に答える