我正在使用PhoneGap构建应用程序,即使手机处于锁定/待机状态,也需要能够播放本地.mp3文件。 音频播放器是用HTML5构建的,工作正常,但是当我关闭应用程序或关闭手机时音乐停止。
我尝试按照此链接中给出的答案 UIWebView: HTML5 audio pauses in iOS 6 when app enters background
但没有运气......
我使用其他导入功能在顶部执行了导入代码。我还将AVFoundation框架包含在我的目标中。
这是代码在AppDelegate.m中的外观。
/**
* This is main kick off after the app inits, the views and Settings are setup here. (preferred -iOS4 and up)
*/
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
/* THE GOOD STUFF */
AVAudioSession *audioSession = [AVAudioSession sharedInstance];
BOOL ok;
NSError *setCategoryError = nil;
ok = [audioSession setCategory:AVAudioSessionCategoryPlayback
error:&setCategoryError];
if (!ok) {
NSLog(@"%s setCategoryError=%@", __PRETTY_FUNCTION__, setCategoryError);
}
我在模拟器和iPhone 5上试过。
有人能帮忙吗?
答案 0 :(得分:4)
首先,您必须在app_name-info.plist中设置音频类别
然后使用phonegap API媒体播放器 http://docs.phonegap.com/en/2.7.0/cordova_media_media.md.html#media.play
function playAudio(url) {
// Play the audio file at url
var my_media = new Media(url,
// success callback
function() {
console.log("playAudio():Audio Success");
},
// error callback
function(err) {
console.log("playAudio():Audio Error: "+err);
});
// Play audio
my_media.play({ playAudioWhenScreenIsLocked : true });
请注意,playAudioWhenScreenIsLocked
默认为true。
另请注意,在模拟器中,音频将无法在后台运行,因此您需要在设备上进行测试。
如果有帮助,请标记为已回复?