- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我目前正在开发一款小游戏,其中的气球会从屏幕底部浮起,玩家必须在它们到达顶部之前将其弹出。
每个气球对象都包含一个方法来安全地设置它是 AVAudioPlayer 的:
func setUpAudioPlayerWithFile(file:NSString, type:NSString) -> AVAudioPlayer? {
let path = NSBundle.mainBundle().pathForResource(file as String, ofType: type as String)
let url = NSURL.fileURLWithPath(path!)
var audioPlayer:AVAudioPlayer?
do {
try audioPlayer = AVAudioPlayer(contentsOfURL: url)
}catch {
print("BALLOON ERROR - AudioPlayer not avaliable.")
}
return audioPlayer
}
然后在每个气球 init() 方法中运行以下代码:
if let popSound = self.setUpAudioPlayerWithFile("PopSound", type: "wav") {
self.popSound = popSound
}
在游戏开始几分钟之前,它工作得非常好。此时我开始收到“气球错误 - 音频播放器不可用”。在控制台中为从那时起生成的每个气球指示未找到我的资源?
此时我的 SKEmitterNodes 也开始返回 nil。 (2016-08-13 18:59:54.527 Stop & Pop[256:13785] *** -[NSKeyedUnarchiver initForReadingWithData:]: 数据为 NULL)
有什么明显的我遗漏的东西可能导致这些错误吗?
希望我提供了足够的信息,感谢您的阅读。
最佳答案
不……这行不通。您必须将 audioPlayer 变量实例化到类级别。
我尝试这样做,在类级别的另一个 ViewController 上实例化了 var audioPlayer。
最好的办法是将此方法本地化到您的 ViewController 中,并将 audioPlayer 放在这里:
class YourClassName : Type {
var audioPlayer : AVAudioPlayer?
yourMethodForCalling() {
}
关于ios - 游戏运行一段时间后 AVAudioPlayer 返回 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38930065/
我正在尝试暂停 AVAudioPlayer如果当前正在播放。当我调试我的代码并检查时 AVAudioPlayer ,我看是分配的。当我尝试访问它的方法/属性(即 myAudioPlayer isPla
在我的应用程序中,我有 52 mp3,当我加载我的 View Controller 时,我以这种方式分配所有 52 mp3: NSString *pathFrase1 = [NSString stri
我在哪里可以找到 AVAudioPlayer 中所有支持的音频格式的列表?我试图在文档中找到有关它的任何信息,但我做不到。谢谢! 最佳答案 根据documentation of AVAudioPlay
我正在使用AVAssetReader读取ipod库 Assets 音频数据并渲染波形图像。这是使用我在对this question的回答中描述的代码进行的 这有时是在AVAudioPlayer实例播放
我正在创建和播放 AVAudioPlayer 如下: playerOne = try AVAudioPlayer(contentsOf: URL.init(fileURLWithPath: path)
我被困在一些与 AVAudioPlayer 相关的奇怪内存泄漏问题上,在尝试了所有想到的东西后我需要帮助。 这是问题的简短描述 - 代码紧随其后。 我初始化我的播放器并开始无限循环播放音轨(无限循环或
我在使用 AVAudioPlayer 播放某些文件时遇到问题。当我尝试播放某个 m4a 时,效果很好。它也适用于我尝试过的 mp3。然而,无论我尝试播放它们的顺序如何,它每次都会在一个特定的 mp3
我会保持简短和甜蜜 - 在我为自己购买 iPhone 开发者计划之前,我正在构建一个应用程序只是为了练习。 我正在尝试 AVFoundation.framework,但一直遇到一个错误,该错误只会让我
场景如下...... 使用 AVAudioPlayer 播放背景 mp3, 在播放背景音乐时使用 AVPlayer 播放视频(无音频视频), 现在,如果尝试通过设备静音将音频静音,背景音频不会静音,
我有一个简单的问题:我正在将 mp3 文件加载到 NSData 对象中,然后在游戏中使用 AVAudioPlayer 来播放它。大约每隔一秒,帧速率就会下降,您可以看到屏幕上出现卡顿现象。这并不是一个
我喜欢更新现有的 iPhone 应用程序,该应用程序使用 AudioQueue 来播放音频文件。电平(peakPowerForChannel、averagePowerForChannel)从 0.0f
我得到了以下代码: - (id)init { if (self = [super init]) { UInt32 sessionCategory = kAudioSession
当我打开UIImagePickerController时,我可以显示设备的相机输入流。 但是当我使用 [player play] 播放 AVAudioPlayer 时,相机会停止工作。 我该如何处理这
我在使用 AVAudioPlayer 时遇到问题,我想重置当前正在播放的播放器并再次播放。 我尝试了以下方法,但没有成功: 声音播放一次,但第二次我选择按钮时它停止声音,第三次再次启动声音。 //St
所以我刚刚注意到,在我的 iPod Touch 上,当我的应用程序触发使用 AVAudioPlayer 播放的短 wav 文件时,音乐会暂停。这是正常的吗? 我找不到任何对此的引用,似乎会在某处注明。
我想控制AVAudioplayer中音频的播放速度。这可能吗?如果是这样,你会怎么做? 最佳答案 现在可以更改播放速度。 示例代码: player = [[AVAudioPlayer alloc] i
我只是想知道你如何重复 AVAudioPlayer? 最佳答案 将属性 numberOfLoops 设置为 -1,它将进入无限循环。 关于iphone - 如何重复播放 AVAudioPlayer?,
我有一个 AVAudioPlayer 正在播放一些音频(废话!) 当用户按下按钮时启动音频。当他们释放它时,我希望音频淡出。 我正在使用界面构建器...所以我尝试连接“touch up inside”
我有一个带有两个按钮的 AVAudioPlayer:播放和停止。 播放时播放按钮隐藏,反之亦然。 问题是当我尝试按下停止按钮时发生崩溃,就在播放结束时,在调用方法“audioPlayerDidFini
我观察到的奇怪的行为与AVAudioPlayer工作时 以下是代码: AVAudioPlayer *newPlayer = [[AVAudioPlayer alloc] initWithContent
我是一名优秀的程序员,十分优秀!