相关疑难解决方法(0)

如何在应用程序中接收远程控制事件的同时播放iPod应用程序中的音乐?

好吧,我试图让用户从他们的iPod库中选择歌曲来收听,但我仍然希望在我的应用程序中接收远程控制通知(耳机,锁屏osd等),这样我就可以做一些额外的事情.到目前为止,我可以播放iPod音乐或耳机事件,但不能同时播放.

这是我到目前为止所知道的......

  1. 如果您使用MPMusicPlayer,则可以轻松地以编程方式访问整个音乐库.但是,无论您使用的是applicationMusicPlayer还是ipodMusicPlayer,它都会收到远程通知.

  2. 如果您使用AVAudioPlayer(Apple推荐的播放器用于您应用中的大多数声音),您可以轻松获得远程通知,但它本身无法访问iPod库.

  3. 可以使用资产URL初始化AVAudioPlayer,并且iPod库中的轨道(类型MPMediaItem)确实有一个URL属性,该属性返回NSURL实例,文档明确表示它与AVAsset对象一起使用,但是当您尝试使用该文件初始化AVAudioPlayer时NSURL,它失败了.(我使用iPod中的"正在播放"轨道,这是一个MP3,它确实返回了一个有效的NSURL对象,但是初始化失败了.更糟糕的是,当它是一个Audible.com文件时,NSURL属性平坦无效.)

  4. 如果您尝试使用AVAudioPlayer的实例来获取远程事件(例如,使用空白声音文件),然后同时使用MPMusicPlayer类播放iPod音乐,您可以远程控制访问,直到您实际启动iPod播放,此时您将丢失它因为您的音频会话被取消激活并且系统音频会话变为活动状态.

  5. 如果您尝试与#4相同,但是您将音频会话的类别设置为可混合变体,则会话不会被取消激活,但是一旦iPod开始播放,您仍然会失去远程控制功能.

简而言之,每当MPMusicPlayer正在播放时,我似乎无法获得远程事件,除了使用MPMusicPlayer之外,我不知道从iPod库中播放内容的任何其他方式.

关于如何解决这个问题的任何建议都会受到欢迎.创意或平淡疯狂.只要它有效,就不要在意.

任何人?任何人?Bueller?Bueller?

中号

iphone remote-control ios4

9
推荐指数
1
解决办法
6299
查看次数

标签 统计

ios4 ×1

iphone ×1

remote-control ×1