通过扬声器的 AVAudioPlayer

2023-12-29

我得到以下代码:

- (id)init {
    if (self = [super init]) {
        UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
        AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);    

        UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
        AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);

        [[AVAudioSession sharedInstance] setDelegate:self];
        [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
        [[AVAudioSession sharedInstance] setActive:YES error:nil];
    }
    return self;
}

但不知怎的,声音不想从扬声器中发出,有人能看出我做错了什么吗?

我用来玩的代码是:

AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:soundFilePathURL error:nil];
[player prepareToPlay];
[player setVolume:1.0];
[player play];

这对你如何设置它很挑剔......

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty(kAudioSessionProperty_OverrideAudioRoute, sizeof(audioRouteOverride), &audioRouteOverride);

使用起来非常重要AVAudioSessionCategoryPlayAndRecord否则路由将无法到达扬声器。设置音频会话的覆盖路由后,您可以使用AVAudioPlayer实例并向扬声器发送一些输出。

希望这对其他人有用,就像对我一样。有关于此的文档很分散,但 Skype 应用程序证明这是可能的。坚持下去,我的朋友们! :)

一些苹果文档在这里:http://developer.apple.com/library/ios/#documentation/AudioToolbox/Reference/AudioSessionServicesReference/Reference/reference.html http://developer.apple.com/library/ios/#documentation/AudioToolbox/Reference/AudioSessionServicesReference/Reference/reference.html

在页面上搜索kAudioSessionProperty_OverrideAudioRoute

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过扬声器的 AVAudioPlayer 的相关文章

  • 如何在 iOS 8 中关闭两个 UIViewController?

    我正在使用 Objective C 开发 iPhone 应用程序 由于我需要一次关闭两个 UIViewController 所以我使用下面的代码 self presentingViewController presentingViewCon
  • 在 UIScrollview 上显示缩略图的最佳方法是什么(从服务器下载)

    我想在 UIScrollview 如照片应用程序 上显示许多图像 作为缩略图 所有图像将从服务器下载 据我所知 有几种选择 1 通过创建 UIImageviews 然后将它们添加为主滚动视图上的子视图 2 通过子类化一个UIView类 然后
  • 在 WKWebView 中禁用缩放?

    有谁知道在 WKWebView 中禁用双击和捏缩放的简单方法 我尝试过的任何方法都不起作用 Webview scrollView allowsMagnification false Error value of type WKWebView
  • 使用 UITabBarController 时覆盖整个屏幕的视图?

    我想在 UITabBarController 设置中在整个屏幕上覆盖 HUD 样式的透明图形 执行此操作的按钮位于第一个选项卡的屏幕 FirstViewController 中 并且覆盖层也应该覆盖选项卡 这可能吗 您可以将新视图直接附加到
  • iPhone 上的语音识别

    我需要开发一个识别语音的 iPhone 应用程序 并根据结果执行进一步的任务 我知道iPhone 3 0不支持语音识别 我需要在服务器端实现语音识别软件 我只知道这个事情 因为我是新手 所以我不知道如何处理 意味着我需要购买哪些软件并在服务
  • ABPeoplePickerNavigationController - 在不使用私有方法/属性的情况下删除“取消”按钮?

    我正在使用 ABPeoplePickerNavigationController 它是 UINavigationController 的子类 在我使用它的上下文中 右侧的默认导航栏按钮 取消 没有任何意义 我找不到禁用或隐藏它的方法 并且无
  • 应用内购买:卡在 paymentWithProductIdentifiers - 已弃用

    我一直在设置应用内购买 我无法做到这一点 SKPayment paymentRequest SKPayment paymentWithProduct co za nideo 100shotsbuybeer 我从 SKPayment paym
  • 在后台轮询服务器的正确方法

    假设这是可能的 我希望我的 iOS 应用程序在后台时轮询服务器 即基本上每 30 分钟检索一次 URL 的内容 并通知用户是否包含 有趣 的内容 基本上以类似的方式如果您不使用推送通知 则内置邮件客户端假定的工作方式 现在 从我到目前为止的
  • 如何获取原始触摸屏数据?

    我知道我可以在 iPhone 应用程序中获取触摸事件 但这些触摸事件都被我过滤掉了 如果我将设备按在脸上 它会过滤掉这些触摸事件 因为它可以检测到它不是手指 我如何获得原始触摸事件 而不以任何方式过滤 没有用于此目的的公共 API 您可以获
  • UISearchBar 取消按钮没有响应

    我已经实现了搜索栏 一旦用户将焦点放在搜索栏中 它就会显示取消按钮 为此我写了searchBar showsCancelButton YES in my searchBarTextDidBeginEditing方法 在searchBarSe
  • 按钮操作在 iPhone 中不起作用?

    我有一个 iPhone 应用程序 我在其中添加一个自定义视图 尽管有一个导航栏视图 在正常情况下 我隐藏该自定义视图 并在需要时取消隐藏它 现在 我正在向该自定义视图添加一个具有操作的按钮 但是当我点击它时 没有任何操作起作用 任何人都可以
  • nspredicate 数组中的多个项目

    如何使用NSPredicate满足多个条件 NSEntityDescription entity NSEntityDescription entityForName MessageData inManagedObjectContext ma
  • UILocalNotification 播放自定义声音

    我在我的应用程序中实现了本地通知 但我只是想知道是否有一种方法可以播放不属于 iPhone 应用程序主包的一部分的声音 基本上在我的应用程序中 我希望用户录制生成本地通知时播放的声音 而不是播放预先录制的或默认的声音 据我所知 这是可以实现
  • iPhone OS:从匿名对象获取方法和变量列表

    我正在构建我的第一个 iPhone Obj c 应用程序 并且我有大量的数据保存子类 我将它们传递给引用函数 对于 cite 函数 这些对象是匿名的 我需要找到一种方法来访问每个传递对象的所有变量 我一直在使用预构建的 NSArray 和选
  • iPhone SDK - orkut API

    我曾使用 gData 库从 iPhone 中的 Google 联系人中检索联系人信息 同样 我将与 Orkut 合作 有没有像 gData 这样适用于 Orkut 的库 如果是这样 请给我链接 提前致谢 对于 orkut 我们有 orkut
  • 在iPhone上将CSV文件读入sqlite3

    有没有办法在iPhone上将CSV文件读入sqlite3 sqlite3 是否有类似于 SQL 命令的功能 LOAD DATA LOCAL INFILE file csv INTO TABLE TABLENAME FIELDS TERMIN
  • 方向改变时重新定位控件

    我知道自动布局可用于在方向改变时使尺寸和位置保持一致 当方向改变时 是否可以完全改变布局 例如 请查看下面的纵向模式下简单登录屏幕的线框 现在 如果我旋转设备 我想完全重新定位控件 这种事情可以用自动布局来完成吗 如果没有 我该怎么办 谢谢
  • 在完成块中保留循环

    在我的课堂上 我创建了这个方法 void refreshDatasourceWithSuccess CreateDataSourceSuccessBlock successBlock failure CreateDataSourceFail
  • 如何使用 iOS 可达性

    我正在开发一个使用网络的 iPhone 应用程序 iPhone 通过 HTTP 请求与我的服务器通信 并且应该可以在 WiFi 和 3G 上运行 我目前使用NSURLConnection initWithRequest向我的服务器发送异步请
  • 如何在 UITableView 中显示零行的表格

    我正在动态地将内容加载到 UITableView 中 如果有数据 表格需要显示数据 如果没有数据 表格应显示普通页面 但在我的应用程序中 表格显示带有两条分隔线的普通页面 我需要删除此分隔线并显示纯白色页面 请建议 任何帮助 将不胜感激 如

随机推荐

  • 使用 async 函数作为 EventEmitter 监听器有什么问题吗?

    我正在编写一个 Node js v10 应用程序 我想使用await在事件监听器函数中 所以我做了一个async监听器功能 根据下面的代码 它似乎有效 但我很好奇注册时是否有隐藏的缺点或我应该注意的事情async功能作为EvenEmitte
  • 尽管提供了接受属性,Antd 上传程序仍然接受所有文件

    我正在使用 antd 拖放组件https ant design components upload components upload demo drag https ant design components upload compone
  • Flexbox 顺序和选项卡导航

    我想用显示 柔性改变order的 div 与line类 但我想保持这个 TAB 导航顺序 A B C D 正如您在代码片段中看到的 第一个示例工作正常 DOM 序列与 Order 相同 但在第二个示例中 选项卡遵循 DOM 序列 不使用 j
  • 编译一个快速修复程序

    我正在尝试使用 QuickFix 库通过 FIX 协议连接到代理 我刚刚使用他们提供的文档构建了库 并立即使用他们的示例代码 include quickfix FileStore h include quickfix FileLog h i
  • MongoDB 获取聚合查询的executionStats

    我正在寻找一种方法来检索executionStats用于聚合 当使用 find 时 我可以通过使用轻松检索它们explain https docs mongodb com manual reference explain results 输
  • 防止浏览器缓存 AJAX 调用结果

    看起来如果我使用加载动态内容 get 结果缓存在浏览器中 在 QueryString 中添加一些随机字符串似乎可以解决这个问题 我使用new Date toString 但这感觉就像是黑客攻击 还有其他方法可以实现这一目标吗 或者 如果唯一
  • 如何使用Java读取带有部分的配置文件[重复]

    这个问题在这里已经有答案了 给定一个包含以下内容的文件 upper a A b B words 1 one 2 two 如何参考它们的标头访问这些键 值 Java 的 Properties 类仅处理无节文件 使用 ini4j 库 链接教程
  • C 缓冲区溢出 - 为什么有恒定数量的字节会引发段错误? (Mac OS 10.8 64 位,clang)

    我正在试验 C 中的缓冲区溢出 发现一个有趣的怪癖 对于任何给定的数组大小 似乎有一定数量的溢出字节可以在 SIGABRT 崩溃之前写入内存 例如 在下面的代码中 10 字节数组可以溢出到 26 字节 然后在 27 处崩溃 同样 20 字节
  • 按住按钮“重复射击”

    我已经提到了无数关于按住按钮的其他问题 但与 Swift 相关的问题并不多 我有一个使用 touchUpInside 事件连接到按钮的函数 IBAction func singleFire sender AnyObject code 还有另
  • 我的随机化代码无法离线工作

    我是一个 php 菜鸟 我只是根据我在网上找到的其他一些脚本制作了一个小脚本 它从名为 Random 的文件夹中随机选取 3 张图像并显示它们 当我在线运行脚本时它可以工作 但是当我尝试在 xampp 上离线运行它时 我收到此错误 注意 未
  • UITableView 的第一行在顶部栏下被截断

    我有一个UITabBarController有两个UITableViews 全部都是在故事板中创建的 问题是 在第二个表视图中 表的前几行位于顶栏下方 第一个表视图不会发生这种情况 即使我更改视图的顺序 第一个视图将完美工作 第二个视图将呈
  • 派生类构造函数在 python 中如何工作?

    我有以下基类 class NeuralNetworkBase def init self numberOfInputs numberOfHiddenNeurons numberOfOutputs self inputLayer numpy
  • R:使用 spplot 地图中的自定义调色板

    我正在努力使用在多个多边形上引入自定义调色板spplot来自sp包裹 我正在绘制几个字段并希望显示我的评级 其值可以为 0 1 2 4 或 5 我需要为此使用自定义颜色 我尝试的是 spplot Map zcol Rating col re
  • 仅在现有 iOS 应用程序中对某些视图使用 React Native

    是否可以仅对项目中的一个视图使用 React Native 我已经成功为特定的 iOS 应用程序屏幕添加了 React 视图 使用 与现有 iOS 项目集成 文档中的说明 但我不知道如何从该屏幕获取数据并调用其他 objective c 代
  • VB.Net Xml 反序列化为类

    我在尝试将一些 XML 反序列化到我创建的类中时遇到了一些问题 我得到的错误是 There is an error in XML document 1 2 at System Xml Serialization XmlSerializer
  • MongoDB索引/RAM关系

    我即将在一个新项目中采用 MongoDB 我选择它是为了灵活性 而不是可扩展性 因此将在一台机器上运行它 从文档和网络帖子中我一直读到所有索引都在 RAM 中 这对我来说没有意义 因为我的索引很容易大于可用 RAM 的量 谁能分享一些关于索
  • 如何使用java获取xml节点的属性值

    我有一个 xml 如下所示
  • 我怎样才能让 Modelsim 警告我有关“X”信号的信息?

    我正在使用 Modelsim 进行大型设计 我已经了解了 modelsim 模拟的工作方式 我想知道 是否有一种方法可以在 modelsim 在仿真阶段评估信号并发现它是红色信号 即 X 时向我发出警告 要知道 不可能列出设计的所有信号并一
  • Rails 4:SQLException:没有这样的表:

    我在 Rails4 中运行以下命令 bundle exec rake db migrate 201405270646 AddAttachmentImageToPins 迁移 change table pins 耙子中止 StandardEr
  • 通过扬声器的 AVAudioPlayer

    我得到以下代码 id init if self super init UInt32 sessionCategory kAudioSessionCategory MediaPlayback AudioSessionSetProperty kA