简体   繁体   English

如何在ios中使用媒体音量而不是铃声音量来播放声音?

[英]How to play sound using media volume instead of ring volume in ios?

I am trying to play a sound but my current code bases the volume off of the ringtone volume. 我正在尝试播放声音,但我当前的代码将音量调节到铃声音量。 How to I change this to media volume? 如何将其更改为媒体卷?

var player: AVAudioPlayer?

... ...

func playSound(name: String) {
        let url = Bundle.main.url(forResource: name, withExtension: "mp3")!

        do {
            player = try AVAudioPlayer(contentsOf: url)
            guard let player = player else { return }

            player.prepareToPlay()
            player.play()
        } catch let error {
            print(error.localizedDescription)
        }
    }

... ...

playSound(name: "baby")

只有在你将一些网址放入播放器之前才设置它。

 try? AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)

To play sound using media volume you should do like this: 要使用媒体音量播放声音,您应该这样做:

func play(){

        let path = Bundle.main.path(forResource: "Plop", ofType: "mp3")!
        let url = URL(fileURLWithPath: path)

        do {
            let sound = try AVAudioPlayer(contentsOf: url)
            bombSoundEffect = sound
            sound.play()
        } catch {
            // couldn't load file :(
        }
    }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM