Reputation: 40735
Is there a way to cancel, pause or stop a sound that started playing through a call to AudioServicesPlaySystemSound()?
Upvotes: 8
Views: 4910
Reputation: 31304
Unfortunately you can't - like the name suggests, it's designed for playing sounds to be used for system alerts, where you don't need to have control over them. You can stop a sound played through AudioServicesPlaySystemSound()
by calling AudioServicesDisposeSystemSoundID()
, but this is a hacky and best avoided.
The best option for straightforward, simple control of audio playback is to use AVPlayer
, part of AVFoundation
- documentation here.
Upvotes: 12