Notification Action en aplicaciones móviles: qué es, variedades y configuración

Autor: IT Sectr Publicado: 2026-03-21 Tiempo de lectura: 8 min

Notification Action — botones interactivos y campos de entrada que aparecen directamente en una notificación push y permiten al usuario realizar una acción sin abrir la aplicación. Es un elemento clave de la experiencia de usuario que acorta el camino hacia la pantalla de destino. Según Android Developers, 2025, Notification Action aumenta la participación de los usuarios hasta un 40% al reducir la fricción en la interacción.

Puntos clave

  • Notification Action — elemento interactivo en notificaciones push para ejecutar tareas rápidamente.
  • En Android, las acciones se implementan mediante PendingIntent y NotificationCompat.Action.Builder.
  • En iOS, las acciones se configuran mediante UNNotificationAction y UNNotificationCategory.
  • Se admiten botones, entrada de texto, marcado como completado y acciones diferidas.
  • Cada acción debe manejarse en el callback de la aplicación al pulsarla.

Qué es Notification Action

Notification Action es un elemento interactivo de interfaz añadido a una notificación push para realizar una acción específica. El usuario puede responder a un mensaje, confirmar una tarea o abrir una pantalla específica sin entrar en la aplicación. Las acciones se muestran como botones debajo del texto de la notificación o en una vista expandida al deslizar.

Por qué se necesitan acciones en las notificaciones

El objetivo principal de Notification Action es reducir el número de pasos para que el usuario alcance su objetivo. En lugar de abrir la aplicación y navegar a la pantalla deseada, el usuario presiona un solo botón. Las investigaciones muestran que las aplicaciones con notificaciones interactivas demuestran una participación entre un 25 y un 40% mayor en comparación con las notificaciones simples.

Representación visual en diferentes plataformas

En Android, las Notification Actions se muestran como botones de icono en vista compacta y botones de texto en modo expandible. En iOS, las acciones aparecen al presionar prolongadamente la notificación o deslizar hacia la izquierda. Cada plataforma tiene sus propias recomendaciones sobre el número de acciones: Android recomienda no más de 3, iOS no más de 4.

PlataformaMáx. accionesMétodo de visualizaciónTipos de acciones
Android3Iconos + TextoBotones, Entrada de texto
iOS4Presión larga / DeslizarBotones, Entrada de texto

Notification Action en Android

En Android, las Notification Actions se crean mediante NotificationCompat.Builder usando el método addAction(). Cada acción contiene un icono, texto y PendingIntent que se activa al pulsarla. A partir de Android 7.0 (API 24), se admite la entrada directa de texto mediante RemoteInput.

Creación de una acción básica

Para crear un botón en una notificación, es necesario definir un PendingIntent que se lanzará al pulsarlo. PendingIntent puede abrir una Activity, iniciar un Service o un BroadcastReceiver. El icono de la acción debe ser monocromático y cumplir con Material Design.

kotlin
val acceptIntent = Intent(context, AcceptActionReceiver::class.java)
acceptIntent.putExtra("notification_id", notificationId)

val acceptPendingIntent = PendingIntent.getBroadcast(
    context, requestCode,
    acceptIntent, PendingIntent.FLAG_UPDATE_CURRENT
)

val notification = NotificationCompat.Builder(context, CHANNEL_ID)
    .setSmallIcon(R.drawable.ic_notification)
    .setContentTitle("Solicitud de confirmación")
    .setContentText("Confirme la realización de la tarea")
    .addAction(R.drawable.ic_accept, "Confirmar", acceptPendingIntent)
    .build()

Acción con entrada de texto (RemoteInput)

Para escenarios que requieren entrada de texto (por ejemplo, responder a un mensaje), Android proporciona RemoteInput. El usuario ingresa texto directamente en la notificación y la aplicación lo recibe sin abrir una Activity. RemoteInput es compatible con Android 7.0+ y requiere manejo explícito en un BroadcastReceiver o Service.

kotlin
val remoteInput = RemoteInput.Builder("reply_input")
    .setLabel("Ingrese respuesta")
    .build()

val replyAction = NotificationCompat.Action.Builder(
    R.drawable.ic_reply, "Responder", replyPendingIntent
)
    .addRemoteInput(remoteInput)
    .build()

val notification = NotificationCompat.Builder(context, CHANNEL_ID)
    .addAction(replyAction)
    .build()

Manejo de acciones en Android

Cuando se pulsa una acción, el sistema lanza el PendingIntent especificado. Para recuperar el texto ingresado mediante RemoteInput, llame a RemoteInput.getResultsFromIntent(intent). Se recomienda manejar las acciones en IntentService o WorkManager para no bloquear el hilo de la UI.

Notification Action en iOS

En iOS, las Notification Actions se implementan mediante el framework UserNotifications. El desarrollador crea categorías de acciones (UNNotificationCategory) y las registra al iniciar la aplicación. Cada acción se define mediante un objeto UNNotificationAction con un identificador único.

Configuración de categorías y acciones en iOS

Para añadir acciones a las notificaciones push en iOS, es necesario crear una categoría que agrupe las acciones relacionadas. La categoría se especifica en la carga útil de la notificación mediante el campo category. Al recibir una notificación, el sistema muestra las acciones disponibles de la categoría especificada.

swift
import UserNotifications

class NotificationSetup {

    func registerNotificationCategories() {
        let approveAction = UNNotificationAction(
            identifier: "APPROVE_ACTION",
            title: "Aprobar",
            options: [.foreground]
        )

        let declineAction = UNNotificationAction(
            identifier: "DECLINE_ACTION",
            title: "Rechazar",
            options: [.destructive]
        )

        let category = UNNotificationCategory(
            identifier: "REQUEST_CATEGORY",
            actions: [approveAction, declineAction],
            intentIdentifiers: [],
            options: []
        )

        UNUserNotificationCenter.current()
            .setNotificationCategories([category])
    }
}

Manejo de acciones en iOS

Cuando el usuario pulsa una acción, el sistema llama al método userNotificationCenter:didReceiveNotificationResponse en el delegado de UNUserNotificationCenter. response.actionIdentifier contiene el identificador de la acción realizada. Para la entrada de texto, se usa UNTextInputNotificationAction, que proporciona el texto ingresado por el usuario.

swift
extension AppDelegate: UNUserNotificationCenterDelegate {

    func userNotificationCenter(
        center: UNUserNotificationCenter,
        didReceive response: UNNotificationResponse,
        withCompletionHandler completionHandler: @escaping () -> Void
    ) {
        switch response.actionIdentifier {
        case "APPROVE_ACTION":
            Log.d("Action: approved")
        case "DECLINE_ACTION":
            Log.d("Action: declined")
        case UNNotificationDefaultActionIdentifier:
            Log.d("Action: opened app")
        default:
            break
        }
        completionHandler()
    }
}

Tipos y escenarios de Notification Action

Notification Action se clasifica por tipo de interacción y escenario de uso. La elección correcta del tipo de acción afecta directamente la experiencia del usuario y la conversión hacia la acción objetivo.

Botones con apertura de aplicación

El tipo más común: un botón que abre la aplicación en una pantalla específica. En Android, se usa PendingIntent.getActivity(), en iOS, la opción .foreground de UNNotificationAction. Se utiliza para acciones que requieren una interfaz completa, como ver detalles de un pedido.

Acciones en segundo plano

Acciones que se ejecutan sin abrir la aplicación. En Android, se usa PendingIntent.getBroadcast() o PendingIntent.getService(). En iOS, la opción .authenticationRequired o sin .foreground. Ejemplos: marcar tarea como completada, dar like a una publicación, añadir a favoritos.

Entrada de texto

Permite al usuario ingresar texto directamente en la notificación. En Android, se implementa mediante RemoteInput, en iOS, mediante UNTextInputNotificationAction. Se usa para responder mensajes, comentarios, ingresar códigos de confirmación de un solo uso.

Acciones destructivas

Acciones que modifican datos de forma irreversible: eliminación, rechazo, bloqueo. En Android, se resaltan visualmente (color rojo en algunos sistemas), en iOS requieren la opción .destructive. Se recomienda solicitar confirmación para acciones destructivas, por ejemplo mediante un diálogo adicional o un segundo toque.

Acciones de entrada con ingreso de texto

Una clase separada de acciones: ingreso de texto directamente desde la notificación. En Android, esto se implementa mediante RemoteInput en combinación con PendingIntent. En iOS, se usa UNTextInputNotificationAction, que hereda de UNNotificationAction. Dichas acciones se utilizan para respuestas rápidas en mensajería, ingreso de códigos promocionales, llenado de formularios de comentarios o valoración de calidad de servicio. El texto ingresado se pasa a la aplicación junto con el identificador de la acción. Para el manejo correcto de la entrada de texto en ambas plataformas, es necesario implementar el análisis de los datos ingresados y la validación antes de ejecutar la acción objetivo.

Manejo de toques y registro

El manejo correcto de Notification Action es crítico para la analítica y la experiencia del usuario. Cada toque debe registrarse y la acción debe ejecutarse de manera confiable incluso si la aplicación estaba cerrada.

Analítica y seguimiento

Realice un seguimiento de cada toque en Notification Action mediante su sistema de analítica. Firebase Analytics, Mixpanel o Yandex.Metrica permiten registrar el identificador de la acción, la hora del toque y el contexto de la notificación. Estos datos ayudan a optimizar su estrategia de notificaciones y aumentar la participación. Las pruebas A/B con diferentes conjuntos de acciones ayudan a identificar los escenarios de interacción más efectivos con el usuario.

Manejo confiable cuando la aplicación está cerrada

Si la aplicación está cerrada, el sistema aún entrega el Intent o UNNotificationResponse al pulsar una acción. En Android, use un BroadcastReceiver para un manejo garantizado. En iOS, el sistema inicia la aplicación en segundo plano y pasa la respuesta al delegado. Para acciones críticas (confirmación de pago, autorización), agregue un mecanismo de reintento y notifique al usuario sobre la finalización exitosa.

Personalización visual de botones en Android

A partir de Android 7.0, el desarrollador puede influir en la apariencia de Notification Action mediante iconos y colores. Los iconos deben ser monocromáticos (canal alfa), de tamaño 24x24 dp. En iOS, la personalización de botones es limitada: se usan colores y fuentes del sistema. Material Design recomienda agrupar las acciones por prioridad: la acción más importante primero, las destructivas al final.

Preguntas frecuentes

¿Cuántas acciones se pueden añadir a una sola notificación?

Android recomienda no más de 3 acciones, iOS hasta 4. Superar el límite provoca que algunas acciones no se muestren o se oculten en un submenú.

¿Cómo añadir un icono para Notification Action en Android?

El icono se pasa en NotificationCompat.Action.Builder como un recurso drawable. El icono debe ser monocromático (canal alfa), de tamaño 24x24 dp y cumplir con las pautas de Material Design.

¿Funcionan las Notification Actions en pantalla bloqueada?

Sí, si la notificación se muestra en la pantalla bloqueada y el indicador visibility está configurado como VISIBILITY_PUBLIC. En iOS, se requiere la opción .authenticationRequired para acciones que necesitan autorización.

¿Cómo manejar un toque en una acción si la aplicación fue eliminada de la memoria?

En Android, el sistema recrea el proceso y entrega el Intent. En iOS, el sistema inicia la aplicación en segundo plano. La entrega garantizada se puede lograr usando BroadcastReceiver en Android y UNNotificationServiceExtension en iOS.

¿En qué se diferencia la experiencia de usuario de las acciones entre Android e iOS?

En Android, las acciones son visibles directamente debajo de la notificación como iconos. En iOS, las acciones están ocultas detrás de una presión prolongada o un deslizamiento. El diseño UX de las notificaciones debe tener en cuenta estas diferencias de plataforma.

Resumen

  • Notification Action — botones y campos de entrada en notificaciones push para interacción rápida.
  • En Android, las acciones se crean mediante NotificationCompat.Action con PendingIntent.
  • En iOS, las acciones se definen mediante UNNotificationAction con registro de categoría.
  • La entrada de texto se implementa mediante RemoteInput (Android) o UNTextInputNotificationAction (iOS).
  • Número máximo de acciones: 3 para Android, 4 para iOS.
  • Cada acción debe registrarse en un sistema de analítica para optimizar las notificaciones.
  • Para un manejo confiable, use BroadcastReceiver en Android y AppDelegate en iOS.

Desarrollaremos una aplicación móvil llave en mano

IT Sectr crea aplicaciones para iOS y Android para startups y empresas desde 2017. Le asesoraremos y le propondremos la mejor solución.

Discutir el proyecto

Lea también