The sound played upon delivery of a notification.
SDKs
- iOS 10.0+
- macOS 10.14+
- Mac Catalyst 13.0+
- watchOS 3.0+
Framework
- User
Notifications
Declaration
class UNNotificationSound : NSObject
Overview
Create a UNNotification
object when you want the delivery of your notification to be accompanied by a specific sound. To play the default system sound, create your sound object using the default
method. If you want to play a custom sound, create a new sound object and specify the name of the audio file that you want to play.
For local notifications, assign the sound object to the sound
property of your UNMutable
object. For a remote notification, assign the name of your sound file to the sound
key in the aps
dictionary. You can also use a notification service app extension to add a sound file to a notification shortly before delivery. In your extension, create a UNNotification
object and add it to your notification content in the same way that you would for a local notification.
Audio files must already be on the user’s device before they can be played. If you use a predefined set of sounds for your notifications, include the audio files in your app’s bundle. For all other sounds, the UNNotification
object looks only in the following locations:
The
/Library/Sounds
directory of the app's container directory.The
/Library/Sounds
directory of one of the app's shared group container directories.The main bundle of the current executable.
Prepare Sound Resources
The system sound facility plays custom alert sounds, so they must be in one of the following audio data formats:
Linear PCM
MA4 (IMA/ADPCM)
µLaw
aLaw
You can package the audio data in an aiff
, wav
, or caf
file. Sound files must be less than 30 seconds in length. If the sound file is longer than 30 seconds, the system plays the default sound instead.
You can use the afconvert
command-line tool to convert sounds. For example, to convert the system sound Submarine
to IMA4 audio in a CAF file, use the following command in Terminal:
afconvert /System/Library/Sounds/Submarine