我希望我的SpriteKit游戏不会中断用户收听的背景音乐(Music.app或无线电应用程序). 一切顺利,直到执行到达这一行: sSharedShootSoundAction = [SKAction playSoundFileNamed:@"plane_shoot.aiff" waitForCompleti
一切顺利,直到执行到达这一行:
sSharedShootSoundAction = [SKAction playSoundFileNamed:@"plane_shoot.aiff" waitForCompletion:NO];
此线背景音乐停止后.怎么避免这个?
我自己也遇到过这个问题.仅供参考我的解决方案是快速的,所以如果您还在使用它,请将其转换为Objective C.对我来说,我的解决方案包括两部分首先,我必须在我的场景文件中的didMoveToView函数中初始化我的SoundAction SKAction.所以你的场景文件应该是这样的:
import SpriteKit import GameKit import AVFoundation class GameScene: SKScene, SKPhysicsContactDelegate { var sSharedShootSoundAction: SKAction = SKAction() override func didMoveToView(view: SKView) { /* Setup your scene here */ sSharedShootSoundAction = SKAction.playSoundFileNamed("plane_shoot.aiff", waitForCompletion: false) } }
然后在AppDelegate文件中,您需要在应用程序的didFinishLaunchingWithOptions函数中放置以下代码行. (不要忘记在您的APPDELEGATE中导入反对意见).所以你的app delegate方法应该是这样的:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // Override point for customization after application launch. // INSERT THIS LINE BELOW. AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryAmbient, error: nil) return true }
希望这能为你解决它,就像它对我一样!如果没有,请告诉我.