Ios Swift 2.0在后台模式下在应用程序代理中播放自定义声音
我正在使用谷歌云消息将通知推送到我用Swift 2.0 xCode 7.1编写的iOS应用程序。GCM不允许自定义通知声音。 请看这里: 因此,我关闭了默认声音,并尝试在调用“DidReceiveEmotentification”时播放声音。我的问题是,在后台模式下声音无法播放。但是,如果我将代码(如下)放在“didFinishLaunchingWithOptions”中,它可以完美地工作,只是在我想要播放的时候无法播放。 我在info.plist中添加了更多背景信息。就像我说的,推送通知到达时它就不起作用了Ios Swift 2.0在后台模式下在应用程序代理中播放自定义声音,ios,avaudioplayer,Ios,Avaudioplayer,我正在使用谷歌云消息将通知推送到我用Swift 2.0 xCode 7.1编写的iOS应用程序。GCM不允许自定义通知声音。 请看这里: 因此,我关闭了默认声音,并尝试在调用“DidReceiveEmotentification”时播放声音。我的问题是,在后台模式下声音无法播放。但是,如果我将代码(如下)放在“didFinishLaunchingWithOptions”中,它可以完美地工作,只是在我想要播放的时候无法播放。 我在info.plist中添加了更多背景信息。就像我说的,推送通知到达时
let alertSound = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("GMNotification", ofType: "wav")!)
print(alertSound)
//var error:NSError?
do {
try self.audioPlayer = AVAudioPlayer(contentsOfURL: alertSound, fileTypeHint:nil)
self.audioPlayer.prepareToPlay()
self.audioPlayer.play()
print("PLAY !!!")
} catch {
print("Error ???")
}
有人能帮忙吗?您必须创建一个共享实例“Singelton”才能播放声音。请参阅:
这将告诉您如何在后台模式下播放音乐。您需要在Info-Plist-background-modes中注册为音乐应用程序。嗨,Christian,我已从我的Info-Plist中添加了我的后台模式。这可能会对您有所帮助。您是否解决了此问题?我也面临同样的问题。解决方案应该是定制通知,然后显示它,但我不知道如何在swift中实现(我在android tho中获得了成功)。