2012-03-23 78 views
5

我有一個應用程序可以播放一些音樂,使用PhoneGap和html5音頻標籤在iOS上播放音頻。以前它可以完美地在背景中播放音樂(使用PhoneGap 1.0.0 for iOS),但是在將PhoneGap升級到1.5.0(Cordova)之後,我無法在後臺播放它。如何使應用程序在後臺播放音頻(iOS上的phonegap 1.5.0)

當我按HOME按鈕時,音頻暫停。當我切換回應用程序時,它會恢復。

我已經在Info.plist中設置了Required background modes,其值爲audio

那麼有什麼我錯過了?謝謝。

回答

3

在MainController.h文件更改如下:

#import "MainViewController.h" 
#import <AVFoundation/AVFoundation.h> 

@implementation MainViewController 

- (id) initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{ 
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; 
    if (self) { 
     // Custom initialization 

     NSError *setCategoryError = nil; 
     [[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: &setCategoryError]; 

    } 
    return self; 
} 

我不知道,如果下面是必要的,但我打掃我的項目(CMD + ALT + K),重新編譯的PhoneGap /科爾多瓦庫(改變目標,並讓它運行到模擬器)和(再次改變目標後)再次編譯到應用程序,現在它的工作!

當心:它只能在設備,而不是在模擬器上

+0

這樣得出AVAudioSession一個錯誤,如果你不確保添加#進口 2015-02-07 12:37:51

+0

遺憾的是還沒有在最新版本的phonegap – 2015-02-07 13:04:56

+0

上工作,這是行不通的 – 2017-06-14 18:58:21

0

除了@Ayame __的答案,我注意到,應用程序可能從後臺當您嘗試跳過歌曲發送到掛起模式(在收音機或播放列表的應用程序)。

我寫了一個簡單的插件,你可以在這裏找到 - https://github.com/vadimf/phonegap-audio-payer

相關問題