如何访问其他应用的当前正在播放的音频 - 实际的音频项目但元数据也是受欢迎的。我可以看到,这个问题已经被问了很多,但几年来提供的解决方案很少。我明白苹果的理念可能不希望应用程序能够做到这一点。我也明白,这样的请求是可能是以外的iOS API。据说,我真的很喜欢某种解决方案。如何获取其他应用的当前正在播放的音频
从逻辑上讲,我觉得
MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo
应返回无论是当前播放信息;但是,正如其他人所提到的,对于在您的应用以外播放的音频,此值始终为nil
。值得注意的是,流行的音频应用程序似乎无法使用MPNowPlayingInfoCenter类,使得这种音频无法显示。
如果使用默认的音乐应用程序,可以使用
MPMusicPlayerController.systemMusicPlayer().nowPlayingItem
但是,什么是通过播客应用,Spotify的,潘多拉,Safari浏览器等访问音频播放更一致的方式?
有没有人找到解决方案?是否有任何旧的Objective-C框架支持这种功能?
如果有某种方式可以访问当前正在播放的项目的音频路径,一种方法可能是可行的。例如,如果我能得到当前播放项目的路径,我可以从它创建一个AV对象:
AVAudioPlayer(contentsOfURL: audioUrl)
那么,有没有一种方法,我可以得到当前播放项目的音频链接,并使用它那样?
另一种方法更好吗?
如果不存在本地的解决方案,是有可能bodge东西一起为它工作?任何建议或想法的欢迎。
编辑:我不相信有人能够做到这一点;不过,我想很多人都想。如果已解决,请将其链接! :)
您发布可能会返回信息的代码,但只有当其他玩家将其交给'MPNowPlayingInfoCenter'时。 – Larme
我使用Apple Music和股票Podcasts app @Larme进行了测试。我错误地实施了吗? – modesitt
问题是,这是不可能的。您无法获得有关其他应用程序正在执行的任何信息。试想一下,应用程序可以跟踪您在YouTube或Safari上观看的内容。这将是一个巨大的安全威胁。 – Sulthan