AVAudioPlayer를 사용하여 AudioServicesPlaySystemSoundWithCompletion 및 사용자 지정 사운드를 사용하여 시스템 사운드를 재생하고 있습니다.음소거/무음 모드가 켜져있을 때 사운드가 계속 재생됩니다.
무음 스위치가 켜져있는 이유는 무엇입니까? "AVAudioSession"에 대한 모든 범주를 시도했습니다. 또한이 시도
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategorySoloAmbient)
try AVAudioSession.sharedInstance().setActive(true)
:
나는 다음과 같은 코드를 시도 나는이 링크에 정의 된 모든 카테고리를 시도try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, with: AVAudioSessionCategoryOptions.mixWithOthers)
try AVAudioSession.sharedInstance().setActive(true)
를하지만, 전화가 음소거되면 소리는 항상 재생 (자동 스위치 ON). https://developer.apple.com/reference/avfoundation/avaudiosession/audio_session_categories
나는이 같은 소리를 연주 해요 :
시스템 소리 :
AudioServicesPlaySystemSoundWithCompletion(1304, nil)
사용자 정의 소리 :
let url = Bundle.main.url(forResource: "sound01", withExtension: ".wav")
do {
if audioPlayer != nil {
audioPlayer!.stop()
audioPlayer = nil
}
if let soundURL = soundURL {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, with: AVAudioSessionCategoryOptions.mixWithOthers)
try AVAudioSession.sharedInstance().setActive(true)
audioPlayer = try AVAudioPlayer(contentsOf: soundURL)
}
guard let audioPlayer = audioPlayer else {
return
}
audioPlayer.prepareToPlay()
audioPlayer.play()
} catch let error {
print(error.localizedDescription)
}
내가 뭔가 잘못하고 있습니까?
소리를 어떻게 연주하는지 포함하십시오. –
@DanielStorm 방금 업데이트했습니다. 감사. – user3427013