- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我的音乐播放器有问题,大部分歌曲都出错
Error Domain=MPErrorDomain Code=4
测试设备订阅了 Apple 音乐,轨道在应用程序上出错,但在 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()
}
}
但是我尝试过,当轨道出现此错误时,我转到 Apple 音乐播放器并从那里播放它,它工作正常,然后我回到我的应用程序并从我的应用程序播放它,它也工作正常,所以我需要转到 Apple Music 应用程序来播放未在我的应用程序中播放的轨道,以使它们在我的应用程序中工作!这太奇怪了,知道为什么吗?
PS:测试设备有Apple music订阅
最佳答案
我在将歌曲添加到播放列表时遇到了一些类似的问题,通过使用解决了这个问题:
DispatchQueue.main.asyncAfter(deadline: .now() + .seconds(5)) {
// Code
}
我会尝试在准备之前或之后稍等片刻。
5 秒可能太多了,但您可以从那里开始
关于ios - MPMusicPlayer 错误域=MPErrorDomain 代码=4?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46034297/
我正在开发一个 iPhone iOS4 应用程序,其中包含播放用户 iPod 库中的音乐。我还想跟踪已播放的歌曲,并且能够随机更改歌曲,即使在后台也是如此。所以我使用以下方法设置音乐播放器: [sel
我正在设置 MPMusicPlayer。现在简单的控制。播放,后退,前进。我链接了三个 IBAction。对于游戏,它不起作用。我相信我让它工作过一次。对于setQueue,我尝试了两种方式。一种是给
我想知道如何获得 MPMusicPlayer 的当前位置。例如,如果音乐播放器正在播放一首歌曲并且当前是 0 分 23 秒,我将如何获取并设置该值? 最佳答案 请使用以下属性获取当前位置 mpMusi
当我通过设置 MPMusicPlayer 的 currentPlaybackTime 属性寻找非 vbr mp3 中的某个位置时,我能够准确地寻找。当我使用 VBR mp3 寻找相同位置时,它会寻找音
我的音乐播放器有问题,大部分歌曲都出错 Error Domain=MPErrorDomain Code=4 测试设备订阅了 Apple 音乐,轨道在应用程序上出错,但在 Apple 音乐应用程序中运行
我想用 Mpmovieplayer 或 Mpmusicplayer 播放 YouTube 视频。我想这样做是因为我需要让应用程序继续以后台模式播放视频,而这在 uiwebview 中是不可能的。如果您
我有一个发布的应用程序刚开始在 MPMusicPlayer 上为 Apple Music 轨道设置 nowPlayingItem 时遇到问题。此代码对设备上的 iTunes 轨道按预期工作,但如果媒体
我是一名优秀的程序员,十分优秀!