- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好的,我试图让用户从 iPod 库中选择歌曲来收听,但我仍然希望在我的应用程序中接收远程控制通知(耳机、锁定屏幕 osd 等),以便我可以做一些事情额外的东西。到目前为止,我可以播放 iPod 音乐或耳机事件,但不能同时播放两者。
这是我目前所知道的...
如果您使用 MPMusicPlayer,您可以轻松地以编程方式访问整个音乐库。但是,无论您使用 applicationMusicPlayer 还是 ipodMusicPlayer,接收远程通知的都是它,而不是您的应用程序。
如果您使用 AVAudioPlayer(Apple 为您应用中的大多数声音推荐的播放器),您可以轻松获取远程通知,但它本身无法访问 iPod 库。
AVAudioPlayer 可以使用资源 URL 进行初始化,并且 iPod 库中的轨道(MPMediaItem 类型)确实有一个 URL 属性,该属性返回一个 NSURL 实例,文档明确指出该实例与 AVAsset 对象一起使用,但是当您尝试使用该 NSURL 初始化 AVAudioPlayer,但失败。 (我在 iPod 中使用了“正在播放”的轨道,它是 MP3,它确实返回了一个有效的 NSURL 对象,但初始化失败。更糟糕的是,当它是一个 Audible.com 文件时,NSURL 属性直接返回 nil。)
如果您尝试使用 AVAudioPlayer 的实例来获取远程事件(例如,使用空白声音文件),然后同时使用 MPMusicPlayer 类来播放 iPod 音乐,则您可以进行远程控制访问,直到实际启动 iPod由于 Audio Session 被停用而系统 Audio Session 变为事件状态,因此您会丢失它的播放时间。
如果您尝试与#4 相同的方法,但将 Audio Session 的类别设置为可混合变体,则您的 session 不会停用,但一旦 iPod 开始播放,您仍然会失去远程控制功能。
简而言之,每当 MPMusicPlayer 播放时,我似乎无法获取远程事件,并且除了使用 MPMusicPlayer 之外,我不知道还有其他方法可以播放 iPod 库中的内容。
任何有关如何解决此问题的建议都将受到欢迎。有创意或疯狂。只要能用就不用在意。
有人吗?任何人?布勒?布勒?
中号
最佳答案
哈!解决了!我知道这是可能的! (感谢Async-games.com支持!)
以下是如何在您的应用程序中播放 iPod 音乐,并提供后台支持,并且您的应用程序接收远程控制通知。
您必须使用 AVPlayer(但不是 AVAudioPlayer。不知道为什么!)使用从库选择器(或 MPMusicPlayerController 中的当前项目或其他位置)获得的 MPMediaItem 的资源 URL 进行初始化,然后设置 Audio Session 的将类别设置为“可播放”(请勿启用混合覆盖,否则您将丢失远程事件!)并将适当的键添加到您的 info.plist 文件中,告诉操作系统您的应用程序想要支持背景音频。
完成了!
这使您可以在后台播放 iPod 库中的项目(由于某种原因,Audible.com 文件除外!),并且仍然可以获得远程事件。当然,由于这是您的音频播放器,它与 iPod 应用程序是分开的,并且会中断 iPod 应用程序,因此您必须做更多的工作,但这些就是中断!
该死的...我只是希望它能与 Audible.com 文件一起使用。 (对于那些感兴趣的人来说,它不这样做的原因是音频文件的 Assets URL 返回 nil。很糟糕!但是你能做什么!)
关于iphone - 如何从 iPod 应用程序播放音乐,同时仍在应用程序中接收远程控制事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3191580/
嘿。 我在使用 Selenium Remote control 运行 selenium 测试时遇到问题。 打开控制台窗口并键入以下命令后: java -jar selenium-server-stan
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 10 个月前关闭。 Improve this
在 reveal.js Github 中,有一种方法可以使用触摸设备激活演示文稿的远程控制,而无需使用第三方脚本。 这是: Reveal.initialize({ dependencies:
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 5 年前。 Improve this ques
我每天 24 小时在专用机器上运行 VB.NET 应用程序。我希望能够接收状态更新并远程控制/调试应用程序(即通过互联网从另一台计算机)。 如果通信是轻量级的(就发送和接收的字节而言),那将是一个优势
这是一个将在 8 小时内上交的项目!我们被这个问题困扰,并认为这个地方是最后的手段。 我正在尝试使用 Arduino 打开/关闭远程控制 socket 。这样做时我们会遇到不一致的情况。有时,当它进入
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 7 年前。 Improve this q
我想在我的房间手册中远程控制 socket ,而无需在我的树莓派上安装额外的库。我想在 C 中使用 UART 接口(interface)。 socket 有 433 Mhz 接收器,我使用 433 M
我正在尝试从 C# 控制 VLC 媒体播放器。我尝试使用 .Net 中的 FindWindow() 命令获取窗口句柄,但我发现每次播放文件时窗口名称都会更改。我遇到的最大问题是将 wm_command
我一直很高兴地将 XPath 与 Selenium 一起使用,甚至将 getEval 与 Javascript 一起使用,但一位同事说,如果能够在 Selenium 中使用 JQuery 选择器不是很
过去,Netscape 有一项功能,允许您从命令行远程控制浏览器 session (使用“-remote”标志)。我正在寻找类似的功能,但在现代浏览器中。 Mplayer 的 slave mode 是
我正在尝试控制安装在远程计算机上的 Windows 服务。我正在使用 ServiceController 类。 我有这个: ServiceController svc = new ServiceCo
这是我第一次在这里发帖。 我正在做一个项目,我想通过不同的输入模式(例如多点触控、3D 鼠标...)来控制 Windows Media Player。目前,我正试图找到一种远程控制 Windows M
我们在屏蔽箱里用手机做实验。 无法进行无线/ radio 通信,因此我们需要使用 USB 电缆。 “androidscreencast”非常适合通过 USB 远程控制 android 设备。 现在有必
启用 WinRM 远程服务: winrm quickconfig 查看 WinRM 服务监听状态: winrm e winrm/config/listener
我正在寻找一个 Emacs (& Chrome) 包,它可以 每个应用程序之间的通信——尤其是从 Emacs 远程控制 Chrome,类似于 Mozrepl对于火狐。 我找到了一个名为 skewer-
Selenium Remote Control 有一个“get_html_source”方法,它以字符串形式返回当前页面的源。 据我所知,此方法适用于 Firefox 和 Safari 中的所有情况。
我需要创建某种可以与 UPnP 媒体服务器交互的 Remote 。 我读到过 UPnP AV 堆栈有类似三种应用程序:媒体服务器、媒体渲染器和控制点。起初,我认为控制点是我想要编程的,但是,在浏览了几
我正在尝试找到一种工具来从 Windows 7 机器远程控制运行 Windows CE 6.0 的摩托罗拉 MC3190 设备。 我已经将 Mymobiler 与 Intermec CN3 设备一起使
我是一名优秀的程序员,十分优秀!