iOS应用在从后台

时间:2017-03-31 05:43:39

标签: ios swift swift3 tvos

我正在尝试构建一个播放声音的iOS应用。有一个On和Off按钮。当我们进入应用程序时,按钮工作正常。但是,如果我们在后台工作,它就无法正常工作。

假设声音处于关闭状态,我们在应用程序外部(应用程序仍然在后台),现在如果我们打开任何其他应用程序并返回到我的应用程序,声音应该处于关闭状态,但是它打开了。对于其他状态也是如此(从ON到OFF)。

这是我正在使用的代码。

func SetUpSound() {

    if let path = Bundle.main.path(forResource: "firenew", ofType: "mp3") {
        let filePath = NSURL(fileURLWithPath:path)
        player = try! AVAudioPlayer.init(contentsOf: filePath as URL)
        player.numberOfLoops = -1 //logic for infinite loop
        player.prepareToPlay() 
        player.play()
    }

    let audioSession = AVAudioSession.sharedInstance()
    try!audioSession.setCategory(AVAudioSessionCategoryPlayback, with: AVAudioSessionCategoryOptions.duckOthers)
}

以下代码适用于ON和OFF。

@IBAction func firePressed(_ sender: UIButton) {

    if fireOnoff.isHidden == true {

        fireOnoff.isHidden = false
        infoPopup.isHidden = true
        popViewslider.isHidden = true
        videoContolpopup.isHidden = true
        volumePopup.isHidden = true

    }
  if player.isPlaying {

        player.pause()
        onoffLabel.textAlignment = .center
        onoffLabel.text = "Off"
    } else {

        player.numberOfLoops = -1
        player.play()
        onoffLabel.textAlignment = .center
        onoffLabel.text = "On"

    }

    toggleButton(button: sender, onImage: #imageLiteral(resourceName: "selectedfire "), offImage: #imageLiteral(resourceName: "unselectedfire"))
}

我正在为iOS和tvOS构建。两者面临同样的问题。 你对解决这个问题有什么建议吗?在此先感谢!!

编辑:我已经在背景模式功能中打开了音频,AirPlay和画中画功能。

0 个答案:

没有答案