アプリでサウンドが再生されない理由を理解しようとしているので、可能な限り単純な実装であると思うものを作成しました。
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を正しく作成しているように見えます。プレイコールでさえ成功を示します。ただし、シミュレーターでもデバイスでもサウンドは再生されません。