我如何使用phonegap在IOS应用程序上播放音乐背景

时间:2013-05-10 06:29:58

标签: ios cordova

我正在构建我的第一个ios应用程序,我想在应用程序开始运行时播放mp3文件,当我更改页面时,它仍然无法重新加载以开始播放。

谢谢!

1 个答案:

答案 0 :(得分:3)

在iOS 4.0及更高版本中,您可以在后台运行音频。 PhoneGap目前不支持这种开箱即用,但您可以添加它。要做到这一点,你需要做两件事;将项添加到info.plist文件并向PhoneGap添加一行代码。

在info.plist文件中,添加“所需背景模式”的新密钥。该密钥将有一系列选项。在该阵列的“Item 0”中,将值设置为“App播放音频”。

接下来,修改〜/ PhoneGapLib / Classes / Sound.m文件。查找包含“if([resourceURL isFileURL]){”的行。它位于第103行附近。在if行语句的正下方,您需要添加以下内容。

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

因此,该部分代码将如下所示。

if ([resourceURL isFileURL]) {
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
    audioFile.player = [[ AVAudioPlayer alloc ] initWithContentsOfURL:resourceURL error:&error];
} else {
    NSData* data = [NSData dataWithContentsOfURL:resourceURL];
    audioFile.player = [[ AVAudioPlayer alloc ] initWithData:data error:&error];
}

注意:有些用户在查找Sound.m文件时遇到了问题。它不在XCode项目本身。您可以在〜/ PhoneGapLib / Classes /下的主目录(〜)下找到它,或者您可以使用Finder搜索Sound.m。右键单击它并在XCode中打开它。