问题标签 [mpnowplayinginfocenter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 如何获取背景音频的当前时间?(iOS)
我有音频应用程序。对于收听音频,我使用AVFoundationFramework并在后台使用MPNowPlayingInfoCenter提供信息。如果用户继续到其他屏幕,则正在播放音频。我想向他展示有关在这个新屏幕上播放音频的信息。最大的问题是获取当前播放背景音频的时间。我怎么才能得到它?
PS:音频长度主要等于一小时。
PPS:我很高兴得到任何语言的答案(obj-c/Swift)
编辑:在 iOS 远程中心显示真实信息,我只需要在代码中获取它...截图: http: //postimg.org/image/9lv60eb1n/
ios - 更新 MPRemoteCommandCenter 播放/暂停按钮
我有一个 iOS 9 应用程序,它使用 AudioGraph 播放类似 MIDI 的歌曲。我已经设置了远程控制命令MPRemoteCommandCenter
和信息,MPNowPlayingInfoCenter
以便当前播放的歌曲显示在控制中心并响应控制中心按钮按下或耳机按钮按下。点击控制中心中的暂停按钮会暂停我的歌曲,但控制中心中的播放头会继续移动,并且该按钮仍为暂停图标。再次点击它只会继续调用暂停。
有没有办法更新MPNowPlayingInfoCenter
orMPRemoteCommandCenter
状态,以便控制中心知道歌曲已暂停?
我尝试过的解决方案:
设置和
enabled
_playCommand
pauseCommand
没有效果
设置
MPNowPlayingInfoPropertyPlaybackRate
为0
_MPNowPlayingInfoCenter
停止播放头前进(如果我没有明确设置它,则重置经过的时间),但按钮仍然是暂停按钮
停止我的音频引擎并调用
AVAudioSession.setActive(false)
这似乎确实有效,但速度很慢,会导致音频故障,即使歌曲暂停,我的应用程序的其他部分也依赖于音频引擎的运行
ios - 在接收 UIEventSubtypeRemoteControlPause 时更改 UIButton 图像 - Objective c - iOS
在使用 AVPlayer 播放时,我已成功设法在锁屏中获得音乐控件,但问题是当用户在锁屏中按下播放/暂停按钮时(根据播放器状态),我想更改 UIButon 图像。多亏了这一点,如果用户在播放器暂停时解锁设备,则 UIButton 的图像代表状态。
我可以通过这些操作做任何我想做的事情,但似乎 UI 更改是不可能的......
有没有可能?
提前致谢 !
编辑:这是我在应用程序中用于更改 UIButton 图像的代码(在锁屏时不起作用):
ios - MPNowPlayingInfoCenter 播放暂停图像不改变
我正在使用下面的代码。一旦应用程序进入后台,这段代码就可以完美运行。如果应用程序没有进入后台并且我们尝试播放和暂停当前正在播放的歌曲,则播放和暂停图像不会改变。在这种情况下,每次断点都会出现广告case UIEventSubtypeRemoteControlPause:
。
谢谢!
ios - 如何从 MPRemoteCommandCenter 禁用所有 MPRemoteCommand 对象
Apple 文档说“您可以通过将其 enabled 属性设置为 NO 来禁用相应的 MPRemoteCommand 对象。”
我提到了是否有一种公共方式可以强制 MPNowPlayingInfoCenter 显示播客控件?我能够禁用/启用锁定屏幕控制上的特定命令。
但是我想禁用锁定屏幕控制中的所有控件,因为我正在播放收音机并且它不支持任何一个操作 - “播放/暂停/下一个/上一个”
我尝试了以下代码片段:
然而它没有用。禁用一切会启用锁定屏幕上的暂停、上一个、下一个按钮。任何帮助将不胜感激。
ios - MPNowPlayingInfoCenter 持续时间未显示
我正在尝试用 Swift 2.2 (Xcode 7) 编写一个可以播放音频的 iOS 9 应用程序。我所有的文件都是从互联网上读取的,所以我选择了StreamingKit并且可以从多个 ViewController 在后台播放,所以我创建了一个存储音频播放器实例的单例。
我成功让播放器在后台播放音频并在 NowPlayingInfoCenter 中显示信息,但我无法获得工作持续时间我得到了这个结果
当我开始播放我的文件时,我用这些行初始化 MPNowPlayingInfo
当缓冲完成时,我用这些行设置附加信息
上面我的 NSNumber 构造函数中传递的值的示例(从调试器中检索):进度 = 1.892426303854875 持续时间 = 62.85865814546887
我还尝试像这个答案一样传递格式化的 NSString ,例如在调试器中检索到的这些值:进度 = 0:02 持续时间 = 1:03
播放器时长和搜索栏还是和截图一样
任何人都可以帮助我吗?谢谢
ios - MPNowPlayingInfoCenter 遥控器在 iOS 10 中响应不正确
在iOS 10中,控制中心UI 进行了重新设计,从那时起,播放/暂停控制按钮的响应不同。
无法暂停的内容不应在每次点击时更改控制中心的播放/暂停按钮。
在iOS 10之前,它可能正在检查MPNowPlayingInfoPropertyPlaybackRate
,如果内容没有暂停,它不会更改遥控器。在iOS 10中,它每次都会立即更改而忽略MPNowPlayingInfoPropertyPlaybackRate
。
ios - 有没有办法防止 AVPlayerViewController 通过 MPNowPlayingInfoCenter 更新锁屏?
这是我的问题:我有一个应用程序正在播放音频文件,通过 更新锁屏信息MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo
,这部分工作正常。
但在另一个视图中,我正在使用AVPlayerViewController
and播放视频AVPlayer
,当视频开始播放时,它会自动更新锁定屏幕,除了视频持续时间之外什么都没有。
我在 Apple 的文档中没有找到任何关于这种行为的信息,我找不到禁用它的方法。
到目前为止,我已经尝试UIApplication.sharedApplication().endReceivingRemoteControlEvents()
在视频开始播放之前和beginReceivingRemoteControlEvents()
之后打电话。它不起作用。
有谁知道防止这种情况的方法?