Saltar al contenido principal
Los sonidos personalizados te permiten proporcionar una experiencia más única y de marca en tu app. Puedes agregar un sonido personalizado a cada notificación o solo a ciertos tipos. Por ejemplo, una app social podría reproducir un sonido distintivo solo para mensajes directos para diferenciarlos de las notificaciones del sistema.
Solo para apps móviles. Los sonidos personalizados no están soportados en web push.

Configuración

Crear archivos de sonido

Crea archivos de sonido siguiendo los requisitos de plataforma a continuación. Si el dispositivo no puede encontrar el archivo especificado o el formato de archivo no está soportado, recurrirá al sonido de notificación del sistema predeterminado.
Mantén los nombres de archivos de sonido en minúsculas ya que algunas plataformas ignoran letras mayúsculas para archivos de sonido. En lugar de AwesomeSound.wav usa awesomesound.wav o awesome_sound.wav.
PlataformaExtensionesNotas
iOS.wav .aiff .cafLos sonidos deben estar codificados como Linear PCM, MA4 (IMA/ADPCM), µLaw o aLaw. Deben durar menos de 30 segundos.
Android.wav .mp3 .oggDuración recomendada menos de 30 segundos. Mantén el tamaño de archivo pequeño, archivos grandes pueden no reproducirse en algunos dispositivos.
Huawei.wav .mp3 .wmaDuración recomendada menos de 30 segundos. Mantén el tamaño de archivo pequeño, archivos grandes pueden no reproducirse en algunos dispositivos.
Amazon.wav .mp3 .oggDuración recomendada menos de 30 segundos. Mantén el tamaño de archivo pequeño, archivos grandes pueden no reproducirse en algunos dispositivos.

Agregar archivos de sonido a tu app

Los archivos de sonido deben incluirse como recursos dentro de tu app. Las URLs externas no están soportadas.
Agrega archivos de sonido a la ubicación apropiada en tu proyecto Xcode dependiendo de tu SDK.
SDKFolder
iOS NativeAdd files to the Xcode project root. Make sure Add to targets is selected when adding files so they are automatically added to the bundle resources.
Cordova, IonicAdd files to Resources directory within the Xcode project in <project-root>/platforms/ios/project-name.xcodeproj.
UnityAdd sounds anywhere in your Unity project, build your project, and then move those sounds to the Xcode project root.

Enviar notificaciones

Incluye la extensión del archivo al hacer referencia al recurso de sonido (p. ej., explode_sound.wav). Configura el sonido en el dashboard al enviar mensajes push o usa la propiedad ios_sound del API Create Notification.Para sin sonido, pasa nil al campo Sound.
OneSignal dashboard push composer showing the iOS Sound field
Si recientemente agregaste un recurso de sonido a tu app, considera esperar unos días antes de enviar notificaciones que lo usen. Puede tomar días o semanas para que la mayoría de los usuarios actualicen a la versión más reciente de la app que contiene el nuevo archivo de sonido.Si un usuario tiene una versión anterior sin el recurso de sonido y recibe una notificación que lo referencia, solo escuchará el sonido de notificación del sistema predeterminado.

FAQ

¿Puedo establecer un sonido predeterminado?

Usa una Template que haga referencia al sonido y/o Android Notification Channel. Cada notificación enviada con esa plantilla usará automáticamente el sonido configurado.

¿Puedo enviar diferentes sonidos de notificación a diferentes usuarios?

Los parámetros ios_sound y android_channel_id son a nivel de solicitud — se aplican a todos los destinatarios de esa llamada API. No puedes especificar diferentes sonidos para diferentes usuarios en una sola solicitud. Para entregar diferentes sonidos a diferentes usuarios, usa un patrón fan-out: haz llamadas API separadas para cada variante de sonido, apuntando a usuarios por etiqueta o segmento. Por ejemplo, almacena el sonido preferido de cada usuario en una etiqueta como preferred_sound, luego envía una solicitud por valor de sonido.
{
  "app_id": "YOUR_APP_ID",
  "contents": {"en": "You have a new message!"},
  "ios_sound": "chime.wav",
  "android_channel_id": "CHIME_CHANNEL_ID",
  "include_filters": [
    {"field": "tag", "key": "preferred_sound", "relation": "=", "value": "chime"}
  ]
}
Cada solicitud apunta solo a los usuarios cuya etiqueta preferred_sound coincide, por lo que cada grupo escucha su propio sonido. Agrega tantas variantes como necesites — una llamada API por sonido.

¿Por qué mi notificación no reproduce el archivo de sonido personalizado?

Hay algunas causas comunes:
  • El archivo de sonido tiene una extensión de archivo incorrecta
  • El archivo de sonido no está codificado en un formato soportado
  • El archivo de sonido está en la ubicación incorrecta en el proyecto
  • El archivo de sonido tiene más de 30 segundos
iOS — Lee más en la documentación de Apple para guía de codificación y pruebas. Android — Verifica que el archivo de sonido esté incluido en tu APK extrayéndolo y confirmando que existe en res/raw/. Si la reducción de recursos está habilitada, protege los archivos de sonido de ser eliminados creando keep.xml en res/raw/:
<resources xmlns:tools="http://schemas.android.com/tools"
  tools:keep="@raw/sound_file"/>

¿Por qué mi notificación reproduce el archivo de sonido predeterminado?

Asegúrate de haber seguido las instrucciones de configuración y que el archivo de sonido esté en la ubicación correcta para tu SDK. Verifica el uso de mayúsculas en el nombre del archivo — algunas plataformas ignoran las letras mayúsculas.

¿Por qué se reproduce el sonido incorrecto?

En Android, las notificaciones se agrupan después de que se recibe un cierto número sin abrirlas. Las notificaciones agrupadas reproducen un sonido predeterminado. Puedes establecer el sonido con la clave de grupo para todas tus notificaciones.

Páginas relacionadas

Categorías de notificación

Configura los canales de notificación de Android para controlar el sonido, la vibración y la importancia.

Plantillas

Crea plantillas de notificación reutilizables con sonidos predefinidos.

API Create Notification

Referencia de API para los parámetros ios_sound, android_channel_id y adm_sound.

Iconos de notificación

Personaliza los iconos de notificación para tu app móvil.