问题标签 [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.

0 投票
2 回答
924 浏览

ios - MPNowPlayingInfoCenter 抛出 EXC_BAD_ACCESS

我正在制作一个播放音频的应用程序,并且我已经对其进行了设置,以便通过 更新锁定屏幕MPNowPlayingInfoCenter,但我遇到了问题。

在看似随机的时间,EXC_BAD_ACCESS尝试更新正在播放的信息时出现错误。

这是这样做的代码:

99.9% 的情况下,这是可行的,但有时在将应用程序退出后台或更改音频文件时,或者只是随机地,

抛出EXC_BAD_ACCESS

此外,_activeMetadata声明为:

它在创建 AVPlayer 时被实例化:

updatePlayback在每一帧上通过 CADisplayLink 调用。

任何想法可能导致异常?

0 投票
1 回答
1173 浏览

ios - 如何使用 AvAudioPlayer 实现 MPNowPlayingInfoCenter

我正在为一个可以播放各种音轨的客户端创建一个 iOS 移动应用程序。

我想要实现的功能之一是在锁定屏幕和横幅上显示有关当前正在播放的音轨的信息。这是移动用户的简单便利之一,如果您的应用程序具有背景音频播放功能,这是必不可少的。就个人而言,我一直使用这个功能!

0 投票
2 回答
1337 浏览

swift3 - 锁屏 iPhone 上的音乐控制

我正在开发音乐应用程序,但对于锁屏控制,我无法指定持续时间和经过的时间

这是我的代码

和媒体信息

我正在获取标题和图像,但锁定屏幕不显示时间

我正在使用 SWIFT 3 编码

0 投票
2 回答
662 浏览

ios9 - MPNowPlayingInfoCenter 中 MPMediaItemPropertyArtwork 的大小应该是多少?

我想在 iOS 锁定屏幕中设置图像,但文档从未提及艺术品的大小。应该设置成什么?

0 投票
0 回答
50 浏览

ios9 - 您如何区分通过按下锁定按钮进入后台的 iOS 应用程序与其他方式?

在我的应用程序中,如果按下锁定屏幕按钮时应用程序仍然是主要应用程序,我想在锁定屏幕上显示正在播放信息。但是,如果该应用程序是通过切换到另一个应用程序或通过按下主页按钮在后台运行的,我不想显示该信息。

任何一种情况都会触发主动辞职并进入后台,您如何区分通过按下锁定屏幕进入后台的 iOS 应用程序与其他方式?

0 投票
1 回答
842 浏览

ios - 如何在锁定屏幕控件上显示搜索栏

我注意到,截至上次更新,iOS 上的 Google Play 音乐现在允许您通过 MPNowPlayingInfoCenter(大概)在锁定屏幕上浏览曲目,就像 Apple Music 和之前的 iPod 应用程序一样。我假设这是一个私有 API。有谁知道这是如何实现的?

0 投票
4 回答
7841 浏览

ios - MPMediaItemArtwork init(image:) 在 iOS 10.0 中已弃用

Apple在 iOS 10 中已弃用该init(image:)方法。新的替代方法是什么。MPMediaItemArtwork

该类显示界面显示以下方法可在新操作系统版本中使用

有谁知道如何使用它?

还有问题 2,是上一个问题的一部分:在模拟器中使用工作在锁屏和控制中心上显示现在正在播放元数据吗?MPNowPlayingInfoCenter

0 投票
4 回答
8333 浏览

ios - MPNowPlayingInfoCenter 分配给 nowPlayingInfo 后不更新任何信息

我正在使用 Swift 3 制作一个 iOS 应用程序,其中在锁定屏幕和控制中心上显示有关当前播放项目的信息会很好。

目前,我正在使用以下代码尝试将此信息插入nowPlayingInfo字典。我还包含了VideoInfovideoBeganPlaying(_:).

该函数在它应该被调用的时候被调用,并且 print 语句被执行,输出Optional("title"). 但是,控制中心和锁屏不会更新它们的信息。暂停/播放,并且向前跳过按钮起作用,因为我将它们设置为viewDidLoad()using MPRemoteCommandCenter

怎么了?

编辑:

正如马特指出的那样,AVPlayerViewControllerMPNowPlayingInfoCenter很时髦。这是我的问题。我应该指定这是我正在使用的类,而不仅仅是AVPlayer.

见: https ://developer.apple.com/reference/avkit/avplayerviewcontroller/1845194-updatesnowplayinginfocenter

0 投票
1 回答
757 浏览

ios - iOS - Chromecast 与 MPNowPlayingInfoCenter 集成以提供锁屏控制

我正在开发一个使用 GoogleCast 框架的 iOS Obj-C 应用程序。

我正在尝试通过MPNowPlayingInfoCenter

我已向我的应用程序添加了正确的权限以支持后台处理。

我正在初始化投射设备,如下所示:

self.chromeCastDeviceManager = [[GCKDeviceManager alloc] initWithDevice:self.selectedChromeCastDevice clientPackageName:[info objectForKey:@"CFBundleIdentifier"] ignoreAppStateNotifications:YES];

当我在接收器上启动媒体时,我会尝试在MPNowPlayingInfoCenter获得成功的播放响应时进行初始化。

我开始相信MPNowPlayingInfoCenter仅在通过加载媒体会话时提供控件AVKit/ AVFoundation?我这样说对吗?

如果这是真的,我可能会在 Chromecast 上创建一个AVKit/ AVFoundation长的 NSInteger 。play method然后强制 AVPlayer 隐藏和静音。然后我可以捕捉媒体控件并重定向到 Chromecast?

我假设 iOS 上的 Youtube 应用程序是这样做的吗?Netflix 和 Spotify 在投射到 chromecast 时都不支持锁屏控制。

0 投票
2 回答
801 浏览

ios - 如何从 WKWebView 获取在我的应用程序中播放的当前音频 URL?

我有一个WKWebView,我正在检查音频是否正在播放

我尝试使用以下方法获取有关它的一些信息:

但它是零。

然后我尝试了:

它也为零。

如何获取当前播放音频的 URL?