【发布时间】:2012-07-16 23:36:25
【问题描述】:
我已经为我的应用(在 plist 中)正确启用了背景音频。在当前播放完成后在后台使用 SPPlaybackManager 播放下一首曲目(当手机被锁定/关闭时)不起作用。
当当前曲目结束并且音频停止时,应用程序不会开始播放下一曲目,直到手机解锁并且我的应用程序再次激活。
我该如何解决这个问题?这是我用来开始播放下一首曲目的 sn-p 代码。我观察到当前曲目变为 nil,然后开始播放下一首曲目。日志显示正在播放管理器对象中设置下一个当前曲目,但它是静默的。
- (void) observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if([keyPath isEqualToString:@"spotifyPlaybackManager.currentTrack"]){
NSLog(@"%@ %@",keyPath,self.spotifyPlaybackManager.currentTrack);
if(self.spotifyPlaybackManager.currentTrack==nil && self.mode == PlayerModeSpotify){
NSLog(@"PLAY NEXT");
[self.spotifyPlaybackManager playTrack:self.nextSPTrack callback:^(NSError *error){
if(error) TKLog(@"Spotify Playback Error %@",error);
}];
}
[[NSNotificationCenter defaultCenter] postNotificationName:PlayerNowPlayingItemDidChange object:self];
return;
}
[super observeValueForKeyPath:keyPath ofObject:object change:change context:context];
}
控制台:
spotifyPlaybackManager.currentTrack (null)
PLAY NEXT
spotifyPlaybackManager.currentTrack <SPTrack: 0x60f8390>: Karaoke
【问题讨论】:
标签: spotify cocoalibspotify-2.0