ios - 尝试播放某些轨道时出现 cocoalibspotify 错误

标签 ios spotify cocoalibspotify-2.0

我正在尝试使用 cocoalibspotify 从 SPArtistBrowse 的结果中播放热门轨道。大多数情况下,这可以完美运行,但偶尔会出现以下错误:

Error Domain=com.spotify.CocoaLibSpotify.error Code=3 "The track cannot be played"

这只发生在特定轨道上,并且对于受影响的轨道,它是一致且可重复的(例如,Armin van Buren 的顶级轨道,spotify:track:6q0f0zpByDs4Zk0heXZ3cO,在尝试使用下面的代码播放时总是会出现此错误)。奇怪的是,如果我使用简单的播放器示例应用程序并输入受影响轨道的 URL,则轨道播放正常;所以我的预感是它与从 SPArtistBrowse 加载的轨道有关。

这是我用来播放轨道的代码:
- (void)playTrack
{   
    SPTrack *track = [self.artistBrowse.topTracks objectAtIndex:self.currentTrackIndex];

    [SPAsyncLoading waitUntilLoaded:track then:^(NSArray *tracks) {
        [self.playbackManager playTrack:track callback:^(NSError *error) {

            if (error) {
                self.currentTrackIndex++;
                if (self.currentTrackIndex < self.artistBrowse.topTracks.count) {
                    [self playTrack];
                } else {
                    [self.activityIndicator stopAnimating];
                    self.activityIndicator.alpha = 0;
                    self.nowPlayingLabel.text = @"Spotify Error";
                }
            } else {
                [self.activityIndicator stopAnimating];
                self.activityIndicator.alpha = 0;
                self.nowPlayingLabel.text = track.name;

                // Set "Now Playing" info on the iOS remote control
                MPNowPlayingInfoCenter *infoCenter = [MPNowPlayingInfoCenter defaultCenter];
                NSMutableDictionary *dic = [[NSMutableDictionary alloc] init];
                [dic setValue:track.name forKey:MPMediaItemPropertyTitle];
                [dic setValue:self.artistLabel.text forKey:MPMediaItemPropertyArtist];
                infoCenter.nowPlayingInfo = dic;
            }
        }];
    }];
}

最佳答案

艺术家浏览应该影响任何事情 - 轨道就是轨道。但是,如果您可以可靠地重现它,请 fork CocoaLibSpotify 并将失败的单元测试添加到单元测试套件 - 这样我们就可以修复它。

Spotify播放服务也有可能在错误的时间不可用,但这种情况相当罕见。

关于ios - 尝试播放某些轨道时出现 cocoalibspotify 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10724799/

相关文章:

maven - Docker Maven Spotify 插件 - 可以切换到非安全注册表

ios - Thread 1 : EXC_BAD_ACCESS (code=1, address=0x0) 在 swift 工作时试图登录 spotify

ios - 使用 CocoaLibSpotify 的离线播放列表

ios - Spotify EXC_BAD_EXE 在关闭 LoginViewController 后第二次点击登录按钮

ios - 有没有一种实用的方法来压缩 NSData?

ios - @property 实际上在幕后做了什么……使用 self.和 self-> 和 _ 下划线

ios - phonegap-plugin-push 获取不是 FCM token 的 APN token

ios - 从加速度计读数中获取重力

与 Spotify 新库相关的 iOS App Rejection

gradle - ReactNative - Spotify SDK 依赖冲突