Objective c ios应用程序启动时如何播放音频?

Objective c ios应用程序启动时如何播放音频?,objective-c,cocoa-touch,avfoundation,Objective C,Cocoa Touch,Avfoundation,我一直在关注教程和其他帖子,但我似乎无法在应用程序启动时自动播放音频 我想wav文件只是继续在后台播放和循环。我不想启动和停止控制等 下面是我在ViewController.m文件中的代码(这是正确的位置吗?),我添加了AVFoundation.frameowrk并将其导入到我的.m文件中。此外,我还将名为AlienRoom的wav文件添加到我的支持文件中。任何帮助都会很棒!我是新来的,所以请一步一步走,如果可以的话,请说清楚。谢谢你 p、 我还没有添加代码,使其循环,所以任何帮助也将是伟大的

我一直在关注教程和其他帖子,但我似乎无法在应用程序启动时自动播放音频

我想wav文件只是继续在后台播放和循环。我不想启动和停止控制等

下面是我在ViewController.m文件中的代码(这是正确的位置吗?),我添加了AVFoundation.frameowrk并将其导入到我的.m文件中。此外,我还将名为AlienRoom的wav文件添加到我的支持文件中。任何帮助都会很棒!我是新来的,所以请一步一步走,如果可以的话,请说清楚。谢谢你

p、 我还没有添加代码,使其循环,所以任何帮助也将是伟大的

//play background sound upon opening app

-(void) awakeFromNib

{

NSString *path = [[NSBundle mainBundle] pathForResource: @"AlienRoom" ofType: @"wav"];
AVAudioPlayer* theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
[theAudio play];
}

在ViewController.h中实现AVAudioPlayerDelegate

@interface ViewController : UIViewController <AVAudioPlayerDelegate>

@property(nonatomic,strong)AVAudioPlayer *theAudio;

你想在应用程序从睡眠中醒来时播放声音吗?或者只是第一次加载应用程序?任何时候主视图出现,我都希望背景音频持续播放。因此,在第一次打开或返回此视图时。感谢您的帮助!你是说把代码放在我的ViewController.h文件中?我在那里和.m中试过,但似乎不起作用。加载ViewController.h后,你在做什么?显示另一个视图?在我的ViewController.h中显示模型视图或任何其他视图?我声明了一组IBoutlet和IBAction,仅此而已。只需按下标签和按钮即可。请查看最新答案。如果您有任何问题,请查看音频文件“路径”,谢谢您的帮助。我唯一的问题是这些代码到底要到哪里去。你是说把所有这些代码放在我的VIewController.h或者其中的一部分,或者是AppDelegate.h???如果你能说这个放在这个文件里,这个放在这个文件里,我会更容易理解。我尝试了一些不同的东西。。。
-(void)viewWillAppear:(BOOL)animated
{
   NSString *path = [[NSBundle mainBundle] pathForResource: @"AlienRoom" ofType: @"wav"];
   if(!self.theAudio)
       self.theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
   self.theAudio.delegate = self;
   [self.theAudio play];
}

- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)data successfully:(BOOL)flag{

    [NSThread detachNewThreadSelector:@selector(playAudioAgain) toTarget:self withObject:nil];

}

- (void)playAudioAgain{

   [self.theAudio play];
}

-(void)viewWillDisappear:(BOOL)animated
{
   if(self.theAudio.isPlaying)
   {
        self.theAudio.delegate = nil;
        [self.theAudio stop];
    }
}