设备锁定时播放 iPod 库中的音频

2024-06-08

只是一个简单的问题。

我已经将我的程序设置为能够播放AVAudioPlayer and AVPlayer在后台,运行良好。我可以播放歌曲,锁定屏幕,声音将继续播放。

我遇到的问题是打电话[AVPlayer play]虽然我的屏幕已经锁定。这最终导致没有音乐被播放。


您需要告诉您的播放器监听控制事件:

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];

    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
    [self becomeFirstResponder];
}
- (BOOL)canBecomeFirstResponder {
    return YES;
}
- (void)viewWillDisappear:(BOOL)animated {
    [super viewWillDisappear:animated];
    [[UIApplication sharedApplication] endReceivingRemoteControlEvents];
    [self resignFirstResponder];
}

然后你可以像这样对它们采取行动:

- (void)remoteControlReceivedWithEvent:(UIEvent *)event {
    if (event.type == UIEventTypeRemoteControl) 
        {
        if (event.subtype == UIEventSubtypeRemoteControlPlay) 
            {
            [AVPlayer play];
            } 

        else if (event.subtype == UIEventSubtypeRemoteControlPause) 
            {
            [AVPlayer pause];
            } 
        else if (event.subtype == UIEventSubtypeRemoteControlTogglePlayPause) 
            {
                if (!AVPlayer.playing) 
                    {
                        [AVPlayer play];

                    } else if (AVPlayer.playing) 
                    {
                        [AVPlayer pause];
                    }
            }
        else if (event.subtype == UIEventSubtypeRemoteControlNextTrack)
            {
            [self myNextTrackMethod];
            }
        else if (event.subtype == UIEventSubtypeRemoteControlPreviousTrack)
            {
            [self myLastTrackMethod];
            }
        }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

设备锁定时播放 iPod 库中的音频 的相关文章

  • Swift 中的等效 android.content.BroadcastReceiver

    我想知道 Swift 中是否有等效的 android content BroadcastReceiver 我需要相同的处理程序 例如onReceive Context context Intent intent 有可能的 谢谢 Ysee 在
  • Monotouch PInvoke System.EntryPointNotFoundException

    我使用 monotouch 将一些 C 代码嵌入到 iPhone Objective C 应用程序中 我能够调用 C 代码并获取返回值 但无法使用 PInvoke 从 C 代码调用 C 函数 我正在尝试让一个简单的例子起作用 这是一个简单的
  • 在 iOS 中如何本地化 UIDatePicker 中的月份文本,是否可能?

    我进行搜索 到目前为止我看到 UIDatePicker 正在处理设备的本地化 我有具有内部本地化的应用程序 我需要根据我的内部本地化更改月份文本 据我所知 这似乎是不可能的 我必须制作自己的自定义选择器 有没有办法在没有自定义日期选择器的情
  • 可以在 iPad 上自动播放 HTML5 视频吗?

    The
  • 无法使用应用程序加载器将 .ipa 上传到 iTunes

    我正在尝试将我的 iPhone ipa 文件上传到 iTunesconnect 我什至最近通过应用程序加载器成功地将构建上传到 iTunes Connect 但从过去两天开始 当我尝试上传 ipa 时 出现以下错误 并且 ipa 未上传到
  • 从故事板向 UILabel 属性字符串添加下划线失败

    从故事板中我选择有问题的 UILabel 然后在属性检查器 gt 标签 gt 我选择 属性 同样在属性检查器 gt 标签 gt 文本 gt 我选择内容 然后我单击字体图标并选择下划线 基本上 我从弹出的 字体 窗口中选择的任何更改都不会生效
  • 什么是 Core Audio 错误 561015905?为什么当我使用锁定按钮时会发生这种情况?

    自从升级到 iOS 10 和 Xcode 8 以来 每当我使用锁定按钮关闭屏幕时 我的 iOS 应用程序就会抛出错误并崩溃 错误是 由于未捕获的异常 com apple coreaudio avfaudio 而终止应用程序 原因 错误 56
  • 突出显示 PDF 文档 iPhone xcode 中的文本

    嗨朋友们 我正在使用 Web 视图开发一本电子书 我正在使用 PDF 文档加载 Web 视图 现在我想开发搜索功能 但我不明白如何实现它 所以请给我一个解决方案 提前致谢 而不是使用UIWebView 您可能想考虑使用 Quartz 2DC
  • iPhone 强制旋转

    我已经阅读了大量关于轮换的内容 但没有找到我的查询的解决方案 开始 我的选项卡中有一个带有选项卡栏和隐藏导航控制器的纵向应用程序 在应用程序中的某个时刻 下一个视图必须是横向视图 XIB 布局是横向完成的 因此我想在没有任何翻译或像素移动代
  • 使用 Accelerate 框架 32 位与 64 位进行 swift 矩阵乘法

    我正在尝试使用 Accelerate 框架在 Swift 中进行矩阵乘法 使用了vDSP mmulD 这在 iPhone6 6 plus iPad Air 模拟器 所有 64 位架构 中完美运行 但不适用于任何 32 位架构设备 看来 32
  • 用我自己的视图替换 UIViewController 根视图

    我正在尝试用子类 UIView 替换 UIViewController 根视图 在 iPhone SDK 的 UIViewController 类参考的概述部分中 有这样的说明 您使用 UIViewController 的每个实例来管理全屏
  • iOS 10 中未显示锁定屏幕上基于信标的应用程序建议

    我的应用程序使用后台信标扫描 我已经写了locationManager requestAlwaysAuthorization and locationManager startMonitoring for region 在我的代码中 当我打
  • iOS9 按需访问和下载资源

    我正在尝试实现新的 iOS9 功能应用程序细化 我了解如何在 Xcode 7 中标记图像并启用按需资源 但我不明白如何在我的应用程序中实现 NSBundleResourceRequest 有人可以帮助我 我将不胜感激 大部分信息都可以在 A
  • 将 id 传递给 calloutAccessoryControlTapped

    当点击附件按钮时 我需要传递 itemId 这样我就可以识别要传递到详细视图的项目 So far 添加注释 for id row in self detailItem Item i Item row CLLocationCoordinate
  • Swift 中的核心数据:仅保存 for 循环中的最后一个对象

    我正在尝试将 Core Data 中的多个对象保存到 iPodSongs 实体中for循环 即当前歌曲的标题for song in result 环形 但我的代码只保存循环中的最后一首歌曲 并且只是不断覆盖同一个对象 我需要每次创建一个新对
  • 如何检查 iPhone 的 IPv6 地址

    我已经根据苹果的建议设置了 IPv6 nat64 环境 https developer apple com library ios documentation NetworkingInternetWeb Conceptual Network
  • CAltimeter 回调永远不会触发

    使用我的 6 我一直在尝试使用 CoreMotion 的新 CMAltimeter 读取相对高度和压力 但是回调永远不会触发 我有一个非常相似的设置 它使用加速度计 陀螺仪和磁力计 他们似乎都工作得很好 想知道是否有人设法阅读 void v
  • 为什么还调用 calloutAccessoryControlTapped 来点击注释视图?

    我的视图控制器上有一张地图 我不知道为什么 但委托calloutAccessoryControlTapped 当我点击注释视图时也会调用 而不仅仅是当我点击细节关闭时 那么为什么会有这种行为呢 import UIKit import Map
  • 当Text超过Height时如何增加UITextView的高度

    我有一个 UITextView 当我在 5 6 行后输入数据时 数据正在向上滚动并且看不到 当输入的文本超过高度时 是否有任何属性可以用来增加 UITextView 的高度 请建议大家 使用此代码使 UITextView 的高度与其内部内容
  • iPhone 向右翻转按钮(如 iTunes)

    我正在尝试在两种视图之间切换 这很简单 代码如下 但我还想同时翻转用于执行翻转的按钮 当您播放曲目时 您可以在 iPod 应用程序中看到此行为 点击翻转按钮可在封面艺术和曲目列表之间翻转 但同时会翻转按钮 这是导航控制器上的一个页面 我要翻

随机推荐

  • Scala Monad - 完整的示例[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 为什么 afterRender 从未被调用?

    看一下下面的 HTML 示例 这是一个简单的KOforeach绑定和一个将新项目添加到的按钮observableArray 添加工作正常并且新项目出现 但是 那afterRender方法永远不会被调用 不会在初始绑定之后 也不会在添加 和呈
  • 如何获取任意类型的默认值

    在 C 中我可以写这样的东西 class AnyThing
  • URL 重写 OpenCart 产品 SEO

    我想重写我的 opencart 网上商店的产品网址 Opencart 本身有一个 seo 实现 这真的很糟糕 我已经更新了 seo 实现 以便能够对多个类别使用相同的关键字 请参阅 Opencart 重复 URL 关键字 https sta
  • 使用存储的密钥作为环境变量

    我有一个秘密密钥存储在 GCP 的秘密管理器中 我们的想法是使用该密钥通过云功能获取预算列表 现在 我可以从代码中访问该密钥 但我面临的问题是我需要使用该密钥设置一个环境变量 这是我添加密钥的方式 如果您的本地目录中有该文件 但是还有其他方
  • 如何使 Loopback 模型事件起作用?

    我尝试过一个例子http apidocs strongloop com loopback model http apidocs strongloop com loopback model MyModel on changed functio
  • 使用 boost::iterator_facade<>

    我有一个链表结构 struct SomeLinkedList const char bar int lots of interesting stuff in here DWORD foo SomeLinkedList pNext 它是现有
  • 尝试使用 FileProvider(Android) 获取 URI 时出现 NullPointerException [重复]

    这个问题在这里已经有答案了 我想在单击按钮后拍照 但我越来越NullPointerException当试图得到URI with FileProvider 这是我的错误代码 Caused by java lang NullPointerExc
  • 调整发散堆积条形图以使用通用更新模式

    我一直在使用可用的堆积条形图示例here https bl ocks org mbostock b5935342c6d21928111928401e2c8608使用以下代码 var data month Q1 2016 apples 384
  • git push 被拒绝,合并冲突,git pull --rebase

    我正在尝试推动我的提交 但不能 因为还有另一个提交 HEAD 竞赛中的同一级别 我知道我需要将这两个提交合并在一起 但不确定如何去做 我已经尝试过了git pull rebase My GIT CLI https i stack imgur
  • 如何摆脱指向origin/master的远程origin/HEAD?

    最近 我在两个不同的复制服务器上更改了我的原始遥控器 现在我在服务器上遇到这种情况 一切正常 git branch a master remotes origin master 在另一台服务器上我有这个 git branch a maste
  • 在 AChartEngine 中单击时突出显示饼图切片

    我想在用户单击时突出显示 更改颜色 饼图特定切片 我可以在示例 下面的代码 中发现可以显示切片的索引和确切的点 但是给切片重新着色怎么样 mChartView setOnClickListener new View OnClickListe
  • 编写I2C设备驱动时探测问题

    我是编写Linux设备驱动程序的新手 如果有什么愚蠢的问题和我糟糕的英语请原谅我 我正在尝试为触摸屏编写一个驱动程序 它通过 I2C 与 CPU 通信 我尝试在linux平台上添加设备驱动程序 注册成功 我的意思是驱动程序已加载 但探测功能
  • git LFS 如何比 git 更高效地跟踪和存储二进制数据?

    我知道 git LFS 导致 git 在文本文件中存储字符串 指针 然后 git LFS 下载该目标二进制文件 这样 远程 git 服务器上的 git repos 就会更小 但是 git LFS 仍然必须存储二进制文件 所以在我看来 本地存
  • 如何使用 Rest api 创建标准逻辑应用程序?

    使用官方文档Azure 逻辑应用 https learn microsoft com en us rest api logic 我能够创建并使用Consumption Logic Apps 是否可以创建Standard Logic App以
  • 当 num-nodes 设置为 2 时,GCP Kubernetes 创建了 6 个节点

    我正在按照本教程在 GCP 上配置 Kubernetes https cloud google com kubernetes engine docs tutorials hello app clean up https cloud goog
  • 如何在颤动中动态禁用工具提示?

    我可以静态禁用工具提示 但我想在单击平按钮时动态禁用工具提示 但是无法动态禁用 我不知道该怎么做 这是我的代码 import package flutter material dart void main runApp MaterialAp
  • sqlalchemy,使用反向包含(不在)子列值列表中进行选择

    我在flask sqlalchemy 中有一个典型的帖子 标签 与一篇帖子相关的许多标签 关系 并且我想选择我提供的列表中未标记任何标签的帖子 首先 我建立的模型 class Post db Model id db Column db In
  • 模拟安装挂钩 Jest 测试装置

    我正在对组件进行一些单元测试 但是 在某些组件中 我有一些东西在运行mounted使我的测试失败的钩子 我设法模拟了我不需要的方法 但是 我想知道是否有一种解决方法可以模拟mounted钩住自己 components attendeesLi
  • 设备锁定时播放 iPod 库中的音频

    只是一个简单的问题 我已经将我的程序设置为能够播放AVAudioPlayer and AVPlayer在后台 运行良好 我可以播放歌曲 锁定屏幕 声音将继续播放 我遇到的问题是打电话 AVPlayer play 虽然我的屏幕已经锁定 这最终