Я боролся с хардкором с простой задачей: Воспроизведение аудиофайла в фоновом режиме при загрузке сцены SpriteKit.AVAudioPlayer не работает над сценой SpriteKit Loading
Я скопировал аудиофайл под названием «Test Song.wav» в свой проект, и он также был найден в моих активах, когда я смотрю под «Build Phases»> «Copy Bundle Resources» (это было то, что this post предложил проверить)
Мой код составлен просто отлично, и мой ring/silent switch был правильно повернут, чтобы позвонить, но звук не воспроизводится при загрузке сцены.
Я использую
- Xcode версии 8.0 бета
- iPhone 6S Plus под управлением IOS 10 Beta 1
Вот мой сломаны код:
import AVFoundation
class GameScene: SKScene {
override func didMove(to view: SKView) {
if let path = Bundle.main().pathForResource("Test Song", ofType: "wav") {
let filePath = NSURL(fileURLWithPath:path)
let songPlayer = try! AVAudioPlayer.init(contentsOf: filePath as URL)
songPlayer.numberOfLoops = 0
songPlayer.prepareToPlay()
songPlayer.play()
}
}
}
Примечание: Я узнал, что в Swift 3.0 метод init() AVAudioPlayer больше не принимает параметр NSError, поэтому эта треска е НЕ компиляции:
var error:NSError?
audioPlayer = AVAudioPlayer(contentsOfURL: alertSound, error: &error)
Здравствуйте, я ценю ваши усилия умеренности, и вы технически правильно, что это дубликат. Я не пытаюсь спорить: мне действительно интересно, как работает этот сайт. Имея это в виду: я не могу не задаться вопросом, почему мой пост не может стоять сам по себе, не опускаясь за то, что он не полезен. Я сделал пост «Q & A», поэтому никто не тратил время на то, чтобы отвечать/на него отвечать, он написан в Swift 3.0 и для iOS 10, и я цитирую все мои источники. Если бы я не знал сообщение, которое вы связали с существующим, как я должен был знать, чтобы внести свой комментарий в этот пост вместо того, чтобы сделать свой собственный пост? –