- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
我多次在 cat 日志中收到此消息:
[avas] AVAudioSessionPortImpl.mm:56:ValidateRequiredFields: Unknown selected data source for Port Speaker (type: Speaker)
我正在使用这段代码来播放背景音乐:
let path = Bundle.main.path(forResource: fileName, ofType:"mp3")!
let url = URL(fileURLWithPath: path)
do {
let sound = try AVAudioPlayer(contentsOf: url)
self.player = sound
sound.prepareToPlay()
sound.volume = 0.05
sound.numberOfLoops = loops
sound.play()
} catch {
print("[PLAY SOUND][DELEGATE] error loading file -> \(fileName)")
}
我进行了研究,发现了类似的问题,所以我在 viewdidload 中添加了音频类别:
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, mode: AVAudioSessionModeDefault)
try AVAudioSession.sharedInstance().setActive(true)
} catch {
print(error)
}
添加上面的代码后,即使手机处于静音模式,背景音乐也会播放!并且 Unknown selected data source for Port Speaker (type: Speaker)
的调试器消息仍在显示
最佳答案
消息 Unknown selected data source for Port Speaker
似乎是 iOS 12 的问题。显然,即使代码有效,它也会出现一些警告。也许 Apple 会很快解决这个问题,所以也许现在您可以忽略此警告,一旦他们找到解决方案,您就可以将其静音。
来源: AVAudioSession errors in iOS 12
至于静音模式播放的背景音乐,是因为你选择了AVAudioSessionCategory
。根据 AVAudioSessionCategoryPlayback
文档(source):
When using this category, your app audio continues with the Silent switch set to silent or when the screen locks.
根据您应用的风格,也许您可以使用 AVAudioSessionCategorySoloAmbient
( source ):
Your audio is silenced by screen locking and by the Silent switch (called the Ring/Silent switch on iPhone).
或者 AVAudioSessionCategoryAmbient
( source ):
This category is also appropriate for “play along” style apps, such as a virtual piano that a user plays while the Music app is playing. When you use this category, audio from other apps mixes with your audio. Your audio is silenced by screen locking and by the Silent switch (called the Ring/Silent switch on iPhone).
关于swift - 端口扬声器的未知选定数据源(类型 : Speaker)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52420709/
本文实例讲述了Android开发之关闭和打开Speaker(扬声器)的方法。分享给大家供大家参考,具体如下: ?
是否可以在Delphi Code中控制(启用/禁用)扬声器图标。 是否有注册表项? 非常感谢... 最佳答案 尽管可以通过更改未记录的注册表值来“隐藏”图标,但用户可以在tray icon选项中再次取
我正在尝试从麦克风获取音频并通过连接到辅助设备的扬声器进行流式传输我使用了此代码,但它在录音机的初始化中不起作用但我真正的问题是“这是正确的方法还是有更好的方法”以及如何解决初始化音频的问题 publ
此问题之前已在此站点上被问过和回答过两次,但该代码似乎根本不适用于现代手机。我正在使用 Android 4.2 和 Android 4.3,但似乎都不起作用。 我在通话期间通过媒体播放器播放 MP3,
我想知道如何开发应用程序/服务器。我的安卓手机会在我说话时录制我的声音,并将其发送到 PC,然后使用 PC 的扬声器播放。 我想我需要一个在计算机上运行的媒体服务器来接收我的声音,然后使用手机上已有的
背景 我需要在软电话应用程序中显示连接的耳机列表(麦克风和耳机组合)。为了进行测试,我有以下设备: 捷波朗 PRO 9470 缤特力 BT300M 罗技 G430 游戏耳机麦克风 用户应该能够从 Co
如标题,我想知道如何获得我的 voip 应用程序的可用输出声音路径列表,或重现默认的 IOS 效果。此时我可以在用户调用电话时启用/禁用扬声器,但如果用户连接了蓝牙耳机,我希望用户可以选择使用哪条路由
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我使用了以下代码,它希望通过系统扬声器发出声音。代码确实听起来但通过声卡(桌面扬声器/耳机)。 我认为可以直接使用系统蜂鸣器发出声音,因为在设备管理器中它会显示相应的驱动程序。有没有解决这个问题的方法
我正在尝试使用nodejs(带 Electron )播放警告声音,即使音量调低或连接了耳机,也应始终在系统默认设备(扬声器)上以最大音量播放警告声音。 到目前为止,我使用 naudiodon播放声音,
如标题所示,如何将来电中的音频静音?我对任何类型的解决方案都感兴趣,使用 SDK、NDK 中的 API,甚至修改 AOSP 内核源代码并重新编译它们,可能会公开一个新接口(interface)。 最佳
我正在尝试开发一个应用程序来记录双方(麦克风和扬声器)的通话。我已经看到有一个应用程序 vrecorder 为 android 1.6 提供这个 vrecorder。 现在我想为 android 2.
在我正在使用的应用中,我们目前支持 Chromecast,但我们有兴趣添加对 Sonos 扬声器的转换支持,就像在 Play Music 中所做的那样。 当使用 MediaRouter 列出可用路线时
有没有办法在 java 中获取设备(扬声器、耳机)的 GUID?我正在尝试修改注册表中的特定值,例如我需要这个键名 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wind
我正在运行 Debian Sid,我想知道我的 USB 扬声器在系统中的什么位置。例如:当我插入笔式驱动器时,dmesg 会显示它的位置(sda、sdb 等)。但是当我插入 USB 扬声器时,它没有显
我在使用 Galaxy S5 时遇到了一个奇怪的设备特定问题。我正在使用 SIP (Linphone) 从 Galaxy S5 调用另一台设备,当我启用扬声器时,该设备开始使用其主麦克风作为降噪麦克风
我想在iPad上专门检测一下有没有耳机 例如 - 我可以使用 AVFoundation 检测 iOS 设备是否有 Tourch,所以有什么方法可以检测耳机的可用性。 最佳答案 1) 如果你想检查设备上
如何在 linux 中使用 PC 扬声器进行 c/c++ 编程?我可以控制哔声的时间和频率吗? 最佳答案 取自 here : #include #include #include int mai
我正在尝试使用 C# 和 NAudio API 记录扬声器输出以检测任何播放音乐的音量和 BPM。 问题是,我不知道该怎么做:/ 我有来自 http://opensebj.blogspot.de/20
想要的功能: 它类似于 iPhone 原生手机应用程序。当有蓝牙/耳机连接到 iPhone 时,扬声器按钮(通常只有扬声器/电话切换)将显示所有可用的音频输出设备。默认使用蓝牙。用户可以选择另一个设备
我是一名优秀的程序员,十分优秀!