控制中心中的“播放/暂停下一个/上一个”按钮显示为灰色

2023-12-06

在我的应用程序中,播放是从控制中心控制的。 当在 AVPlayer 中进行播放时(此时播放控件在控制中心工作正常),我正在加载带有其他流 URL 的 Web 视图。

一旦流再次完成,我就开始从 AVPlayer 播放。 此后,控制中心的播放控件将显示为灰色。

我在用[MPNowPlayingInfoCenter defaultCenter].nowPlayingInfo在控制中心启用播放控制。

会出现什么问题呢?


我也遇到了这个问题AVPlayer实例。您可以使用MPRemoteCommandCenter在锁定屏幕和命令中心上设置控件。

MPRemoteCommandCenter *commandCenter = [MPRemoteCommandCenter sharedCommandCenter];

commandCenter.previousTrackCommand.enabled = YES;
[commandCenter.previousTrackCommand addTarget:self action:@selector(previousTapped:)];

commandCenter.playCommand.enabled = YES;
[commandCenter.playCommand addTarget:self action:@selector(playAudio)];

commandCenter.pauseCommand.enabled = YES;
[commandCenter.pauseCommand addTarget:self action:@selector(pauseAudio)];

commandCenter.nextTrackCommand.enabled = YES;
[commandCenter.nextTrackCommand addTarget:self action:@selector(nextTapped:)];

previousTapped:, playAudio, pauseAudio, and nextTapped我的视图控制器中的所有方法都调用相应的方法来控制我的AVPlayer实例。要启用操作,您必须显式设置enabled to YES and提供一个命令target and selector.

如果需要禁用特定操作,则必须显式设置enabled财产给NO 此外添加目标。

commandCenter.previousTrackCommand.enabled = NO;
[commandCenter.previousTrackCommand addTarget:self action:@selector(previousTapped:)];

如果不设置enabled对于该命令,该项目根本不会出现在锁定屏幕或命令中心中。

此外,请记住将您的应用程序设置为后台播放(添加UIBackgroundModes audio值到您的 Info.plist 文件。),将播放器设置为活动状态,并检查错误:

NSError *setCategoryError;
NSError *setActiveError;
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&setCategoryError];
[[AVAudioSession sharedInstance] setActive:YES error:&setActiveError];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

控制中心中的“播放/暂停下一个/上一个”按钮显示为灰色 的相关文章

  • 导入 RNCryptor 后架构 armv7 的未定义符号

    我导入了 RNCryptor 可以在这里找到 https github com rnapier RNCryptor https github com rnapier RNCryptor进入我的应用程序 但是 我在日志中收到了三个错误 Und
  • 在 Xcode 5 中重命名 iOS 项目[重复]

    这个问题在这里已经有答案了 我需要重命名一个 iOS 项目 有没有办法在不开始一个全新项目的情况下做到这一点 我发现的所有其他信息都与 Xcode 4 或旧版本相关 这些方法似乎使项目崩溃 我在尝试任何名称更改之前创建了一个快照 在 Xco
  • 在 iOS 上将 NSString 转换为 NSDate 的正确方法?

    我一直在使用此方法将常规 NSString 对象转换为 NSDate 但尝试向 Apple 提交更新 但遭到拒绝 在 iOS 中还有什么其他方法可以做到这一点 NSString date str 2011 08 12T12 20 00Z N
  • Apple Watch 预构建操作可更改故事板 customModule 引用

    我目前有一个项目 其中包含同一应用程序的 3 个不同版本 不同的品牌等 该项目运行得很好 从那时起 我添加了 3 个新的 Apple Watch 目标 每个应用程序 版本 1 个 其中 2 个引用 主 Apple Watch 目标中的文件
  • AVAssetExportSession 为零 iPhone 7 - Plus 模拟器

    AVAssetExportSession在 iPhone 6 及以下版本上运行良好 但在 iPhone 7 iPhone 7 Plus 模拟器上运行不佳 Xcode 8 0 这段代码return nil在exportSession中 当在i
  • 如何将 ios7 通用应用程序升级到基于 Xcode 6 的通用故事板应用程序?

    我目前有一个基于 xcode 5 ios 7 的通用应用程序 因此有两个故事板 我正在考虑将其更新到 ios 8 有没有办法 最佳方法将两个故事板迁移到通用的单个故事板 我在 xcode 6 中看不到转换选项 None
  • 水平 UICollectionView 单行布局

    我正在尝试使用以下命令设置简单的水平布局UICollectionView 兜圈子却没有达到预期的结果 所以任何指针或例子将不胜感激 我粘贴经常更改的代码但没有成功可能没什么意义 该图像显示两行 第一行是单个项目 尺寸正确并且在中心正确对齐
  • UIImageJPEGRepresentation 在视网膜显示屏上提供 2x 图像

    我有这段代码 它创建一个图像 然后向其添加一些效果并缩小其大小以使其largeThumbnail UIImage originalImage UIImage imageWithData self originalImage thumbnai
  • PFQueryTableViewController 错误

    我正在遵循在线教程 使用 Parse 作为后端创建照片共享应用程序 我已经运行了两次教程 两次都从头开始创建应用程序 但在同一位置仍然出现相同的错误 我到处寻找解决方案 但仍然没有运气 我正在使用 PFQueryTableViewContr
  • 如何检测用户是否第一次打开应用程序[重复]

    这个问题在这里已经有答案了 是否可以检测用户是否是第一次打开iOS应用程序 使用Objective C 我想在用户第一次打开应用程序时显示欢迎消息 但之后不再向他们显示 我正在寻找类似的东西 BOOL firstTime AppDelega
  • 如何动态获取 UITableViewCell 的高度

    我创建了自定义的tableViewCell 我在UITableViewCell中添加了UIView SubView 所以我在 UIView 中的所有动态文本和图像内容都会根据文本和图像大小而变化 但现在 HeightforRowAtInde
  • iPhone X 将对象底部与安全区域对齐会破坏其他设备上的外观

    关于 iPhone X 自动布局怪癖的问题 我有两个按钮 以前这些按钮将与超级视图底部对齐 偏移量为 20 以免它们接触屏幕底部 此后我将链接更改为安全区域而不是超级视图 Here s the original setup Looks go
  • 在 iOS 7 中 viewForHeaderInSection 部分是从 1 开始而不是从 0 开始

    我正在处理UITableView在我的项目中 这个项目是在 Xcode 4 5 中创建的 现在我正在使用 Xcode 5 所以我的问题是何时在 iOS 6 中运行我的项目 viewForHeaderInSection方法部分从 0 开始没问
  • 如何在 iOS 13 中将 UISegmentedControl 的背景颜色设置为白色

    iOS 13 对 UISegmentedControl 进行了一些更改 包括切换所选片段时的非常漂亮的动画 但是我注意到它没有显示backgroundColor属性正确 它似乎总是有一点色彩 我见过回答如何设置的问题selectedSegm
  • 使用数组中的字符串淡入/淡出标签

    func setOverlayTitle self overlayLogo text Welcome var hello String Bon Jour GUTEN nMORGEN BONJOUR HOLA BUENOS D AS BUON
  • Swift:长按手势识别器 - 检测轻击和长按

    我想连接一个动作 如果手势是点击 它会以特定的方式为对象设置动画 但如果按下持续时间超过 0 5 秒 它会执行其他操作 现在 我刚刚连接了动画 我不知道如何区分长按和点击 如何访问新闻持续时间以实现上述目的 IBAction func ta
  • 在 Objective-C 中的 Swift 类上调用 NSStringFromClass 返回模块损坏的名称

    我知道这个问题 https stackoverflow com questions 24107658 get a user readable version of the class name in swift in objc nsstri
  • Xcode 异步单元测试在主线程上等待

    我正在尝试使用 Xcode 中的单元测试来测试一些异步代码 但主线程被阻塞 问题在于 某些正在测试的代码期望从 iOS 类 AVFoundation 接收回调 但是 AVFoundation 类似乎只会在主线程上回调 问题是 如果我正在进行
  • 从现有坐标地图套件中查找最近的位置

    我正在为拥有多家商店的客户开发 iPhone 应用程序 目标 C 我有数组中所有商店 20 的坐标 纬度 长 目前我正在考虑循环遍历商店坐标数组并获取从用户当前位置到商店位置的距离 然后将它们添加到数组中并按最小距离进行排序 这是正确的方法
  • 使用日期 Swift 3 对字典数组进行排序

    我有一个名为 myArray 的数组 其中添加了字典 我希望该字典按时间排序 这是字典中的键 那个时间是在 String 中 时间的日期格式为 yyyy MM dd HH mm ss 我尝试使用下面的代码解决方案 但给出了 从 字符串转换

随机推荐

  • 打字稿错误地将元组推断为数组

    首先为我的英语道歉 我有一个类似的功能function func string string 它返回一个元组 但是 当我实现像这样的 return 语句时 var test text foo bar return test Typescri
  • Coldfusion CFPDF 读取二进制数据库列

    cfpdf可以直接读取二进制数据库列吗 我目前在运行查询来获取列的地方拥有它 使用cffile将文件写入目录 然后用 cfpdf 阅读 这样我就可以提取文本 是否可以在不使用 cffile 写入并直接读取二进制文件的情况下执行此操作 如果是
  • php 未找到设置的 cookie

    我已经成功设置了cookiecad并可以在 Firefox cookie 搜索中看到它 if isset COOKIE cad echo YES else echo NO parse NO 我正在托管服务器上设置我的网站 即将从另一个服务器
  • 将 JUnit 5 测试结果与 Intellij 测试报告集成

    我的 build gradle 配置如下 apply plugin java compileTestJava sourceCompatibility 1 8 targetCompatibility 1 8 repositories mave
  • Windows 中 Node.js 中 process.on('SIGINT') 的等价物是什么?

    I m following the guidance here listening for SIGINT events to gracefully shutdown my Windows 8 hosted node js applicati
  • PowerBI 动态时间序列条形图

    在这里补充我之前的问题 时间序列问题 我想在时间序列 其中包含用户设置的日期范围 上绘制单位容量图表 我试图绘制的图表如下 对于每个单元名称 我都有单元容量的开始和结束日期 如下 PowerBI 表所示 4个子问题 如何绘制这些容量随时间变
  • 如何从单一行为中提取价值

    是否有带签名的内置函数 Monad m gt m a gt a Hoogle 说没有这样的功能 你能解释一下为什么吗 一个 monad 只提供两个功能 return Monad m gt a gt m a gt gt Monad m gt
  • 异步ajax请求锁定浏览器

    这是启动一个简单的代码片段异步阿贾克斯请求 请求的处理时间为故意长 10 秒或更长时间 Why 浏览器阻止我的用户点击在异步请求过程中在 href 链接上 已尝试使用 Firefox 和 Chrome The 异步请求通常被调用并且 就绪
  • 如何将Python项目转换为可执行文件

    我有一个 Python 项目 我想将其转换为可执行文件 我已经安装了Pyinstaller 我只知道如何将一个脚本转换为 exe 但我有多个包含多个 python 脚本的包 我成功使用的命令行是 pyinstaller noupx onef
  • 是否可以将 Xamarin ios 应用程序连接到 swift watchOS 扩展

    我已经有一个在 swift 下开发的 WatchOSExtension 是否可以将其连接到新开发的 xamarin ios 项目 不 不可能将 Swift 扩展与 Xamarin 应用程序一起使用 这也适用于任何形式的 iOS 扩展 您将需
  • 按值返回的右值引用参数是 xvalue 吗?

    我的理解是 在下面的函数中 表达式foo在声明中return foo 是一个 xvalue 因为它表示的对象即将过期 即使foo是前面语句中的左值 Foo bar Foo foo change foo return foo 此类到期值不属于
  • 跟进术语,寻找行动项目

    我想编写一个快速脚本来提醒自己将后续操作项目放在各种谷歌文档上 从谷歌驱动器中受益 以便从 API list 中受益 然而 似乎followup actionitems搜索查询不适用于 API 因为搜索词未知 它返回 400 错误 例如 这
  • 尝试 listview.getChildAt() 时出现 java.lang.NullPointerException

    ListView 具有正确的值 public class FragmentTab1 extends SherlockFragment ListView list LazyAdapter adapter Override public voi
  • 获取父 ID 的子页面并显示自定义图像字段以及 WordPress 中页面的链接

    我需要获取子页面列表 但我需要排除第一个子页面 我还需要显示一个名为 page icon 的自定义图像字段 其中包含每个图像的 url 和页面标题 这将充当子菜单 将显示在每个子页面上 每个菜单项都需要将当前类附加到 a 标签 我尝试了多种
  • Accumulo 支持聚合吗?

    我是 Accumulo 的新手 我知道我可以编写 Java 代码来使用 Hadoop 和 MapReduce 扫描 插入 更新和删除数据 我想知道的是 Accumulo 中是否可以进行聚合 我知道在MySql中我们可以使用groupby o
  • Windows 中用于生物识别身份验证的凭据提供程序

    我有一个定制的基于 USB 的指纹识别设备 如何将设备上的指纹与 Windows 计算机的用户关联起来 使用 CredentialProvider 首先 我希望在指纹扫描时自动登录 而不提示输入用户名 密码 我意识到应该有一些注册过程来将指
  • Chome 扩展:将 chrome.storage 数据从后台脚本发送到 popup/contentscript

    如标题中所述 我正在尝试编写一个后台脚本 该脚本将侦听来自 popup js 或 contentscript js 的加载请求 当它接收到负载时 它会获取 chrome storage local 的内容 执行一些数据处理 for 循环 并
  • 如何使用 Pharo 每 60 秒刷新一次会话并将其显示在成绩单上?

    a b a ZnClient new a get http cloud storage com login a formAt username put jom formAt password put mypass post get http
  • 自定义或可重复使用的 HTML 组件

    我们可以在 HTML 中创建自定义或可重用的组件吗 我的页面具有帐户搜索功能 该功能是使用 HTML JS jQuery 代码实现的 我的页面由不同地方的帐户搜索组成 功能同样困难 每次使用时 只有 div 的 ID 会发生变化 那么我们能
  • 控制中心中的“播放/暂停下一个/上一个”按钮显示为灰色

    在我的应用程序中 播放是从控制中心控制的 当在 AVPlayer 中进行播放时 此时播放控件在控制中心工作正常 我正在加载带有其他流 URL 的 Web 视图 一旦流再次完成 我就开始从 AVPlayer 播放 此后 控制中心的播放控件将显