使用AVAudioPlayer控制锁定屏幕上的音频

问题描述 投票:1回答:1

我有背景模式激活音频和我使用此方法播放文件,但我无法控制它们屏幕被锁定。

func loadSound(resource: String, soundExtension: String) {
    guard let url = Bundle.main.url(forResource: resource, withExtension: soundExtension) else {
        return
    }

    UIApplication.shared.beginReceivingRemoteControlEvents()

    do {
        try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
        try AVAudioSession.sharedInstance().setActive(true)

        player = try AVAudioPlayer(contentsOf: url, fileTypeHint: AVFileType.mp3.rawValue)
    } catch let error {
        print(error.localizedDescription)
    }
}
ios swift avaudioplayer
1个回答
2
投票

对于具有相同问题的人,请在问题方法中调用此方法

fileprivate let remoteCommandCenter = MPRemoteCommandCenter.shared()

func activateControlCenterCommands() {

    remoteCommandCenter.playCommand.addTarget(self, action: #selector(handlePlayCommandEvent(_:)))
    remoteCommandCenter.pauseCommand.addTarget(self, action: #selector(handlePauseCommandEvent(_:)))

    remoteCommandCenter.playCommand.isEnabled = true
    remoteCommandCenter.pauseCommand.isEnabled = true
}
© www.soinside.com 2019 - 2024. All rights reserved.