Currently, sound can only be 'default' | null. But as far as I researched, there are ways to use custom sound files in build as the notification sound.

Suggestion: Sound files (preprocessed for the format requirements) can be all put in a folder, then specify the folder path in app.json. Expo should be responsible for bundling them into the app. And once the files are bundled, we can use sound: 'default' | null | 'filename.xxx' to customize the sound when sending notification.

Use case: This can be really useful in some scenarios such as playing a long alert for a merchant, to notify him that there is an new order.

Related links:

iOS:

- https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/SupportingNotificationsinYourApp.html#//apple_ref/doc/uid/TP40008194-CH4-SW10

- https://stackoverflow.com/questions/37536591/change-push-notification-sound

- https://medium.com/@prakashmaharjan20/play-custom-push-notification-sound-ios-a767748a46

Android:

- https://stackoverflow.com/questions/30072269/how-to-make-push-notification-with-specific-sound

- https://stackoverflow.com/questions/38882100/android-gcm-notification-using-sound