2017-09-04 67 views
6

我有音乐播放器的问题,大部分的歌曲给人错误MPMusicPlayer错误域= MPErrorDomain代码= 4?

错误域= MPErrorDomain代码= 4

测试设备具有苹果音乐订购和轨道提供了有关应用程序错误他们在Apple音乐应用程序中工作正常!

下面是代码:

let applicationMusicPlayer = MPMusicPlayerController.systemMusicPlayer() 
applicationMusicPlayer.setQueueWithStoreIDs([ID]) 

     if #available(iOS 10.1, *) 
     { 

     applicationMusicPlayer.prepareToPlay { (error) in 

      if (error != nil) 
      { 
       print("[MUSIC PLAYER] Error preparing : \(String(describing: error))") 
       return 
      }else 
      { 
       self.start_timer(); 
       self.applicationMusicPlayer.play() 
      } 

     } 

     }else 
     //Play directly ios below version 10.1 
     { 
     self.applicationMusicPlayer.play() 
     } 

    } 

但我已经试过,当轨道给出了这样的错误,我去苹果的音乐播放器,并从那里它发挥的工作,然后我又回到了我的应用程序,并从我的应用程序播放它的工作也很好,所以我需要去苹果音乐应用程序播放曲目不在我的应用程序中播放,使他们在我的应用程序中工作!这太奇怪了,为什么?

PS:测试设备具有苹果音乐订阅

+0

是否会将错误下载到设备的歌曲?或者他们在用户库中但没有下载到手机中? –

+0

@MicahWilson @MicahWilson来自远程API的歌曲,它提供苹果歌曲与epf_id < - 商店ID在苹果,有些是作品,其中大部分都没有给出上述错误 – Jack

+0

但是,当我去苹果音乐,并从那里播放它玩,然后我们回到应用程序,并从我的应用程序播放其播放也没有错误 – Jack

回答

6

将歌曲添加到播放列表,当我有一些类似的问题,通过解决它:

DispatchQueue.main.asyncAfter(deadline: .now() + .seconds(5)) { 
    // Code 
} 

我会玩弄之前等待一个位或在准备之后。

5秒可能太多,但你可以从那里开始

相关问题