Notification Action sa mga mobile app: ano ito, mga uri at pagsasaayos

May-akda: IT Sectr Nai-publish: 2026-03-21 Oras ng pagbabasa: 8 min

Notification Action — mga interactive na button at input field na direktang lumalabas sa push notification at nagpapahintulot sa user na magsagawa ng aksyon nang hindi binubuksan ang app. Ito ay isang pangunahing elemento ng karanasan ng user na nagpapaikli sa daan patungo sa target na screen. Ayon sa Android Developers, 2025, ang Notification Action ay nagpapataas ng pakikilahok ng user ng hanggang 40% sa pamamagitan ng pagbawas ng alitan sa interaksyon.

Mga pangunahing punto

  • Notification Action — interactive na elemento sa push notification para sa mabilis na paggawa ng gawain.
  • Sa Android, ang mga aksyon ay ipinapatupad sa pamamagitan ng PendingIntent at NotificationCompat.Action.Builder.
  • Sa iOS, ang mga aksyon ay naka-configure sa pamamagitan ng UNNotificationAction at UNNotificationCategory.
  • Suportado ang mga button, text input, markang “natapos” at mga naantalang aksyon.
  • Bawat aksyon ay dapat pangasiwaan sa callback ng app kapag na-click.

Ano ang Notification Action

Notification Action — ay isang interactive na elemento ng interface na idinaragdag sa push notification upang magsagawa ng isang tiyak na aksyon. Maaaring tumugon ang user sa isang mensahe, kumpirmahin ang isang gawain, o buksan ang isang partikular na screen nang hindi pumapasok sa app. Ang mga aksyon ay ipinapakita bilang mga button sa ilalim ng teksto ng notification o sa pinalawak na view kapag nag-swipe.

Bakit kailangan ang mga aksyon sa mga notification

Ang pangunahing layunin ng Notification Action ay bawasan ang bilang ng mga hakbang na kailangan ng user upang maabot ang kanyang layunin. Sa halip na buksan ang app at mag-navigate sa nais na screen, ang user ay nag-click ng isang button. Ipinapakita ng pananaliksik na ang mga app na may interactive na notification ay may 25–40% na mas mataas na antas ng pakikilahok kumpara sa mga ordinaryong notification.

Visual na representasyon sa iba’t ibang platform

Sa Android, ang Notification Action ay ipinapakita bilang mga icon-button sa compact view at bilang text button sa pinalawak na mode. Sa iOS, lumilitaw ang mga aksyon sa pamamagitan ng matagal na pagpindot sa notification o pag-swipe pakaliwa. Bawat platform ay may sariling rekomendasyon tungkol sa bilang ng mga aksyon — Android ay nagrerekomenda ng hindi hihigit sa 3, iOS — hindi hihigit sa 4.

PlatformMax. aksyonParaan ng pagpapakitaMga uri ng aksyon
Android3Mga icon + tekstoMga button, text input
iOS4Matagal na pagpindot / pag-swipeMga button, text input

Notification Action sa Android

Sa Android, ang Notification Action ay nilikha sa pamamagitan ng NotificationCompat.Builder gamit ang addAction() method. Bawat aksyon ay naglalaman ng icon, teksto, at PendingIntent na nagti-trigger kapag na-click. Mula sa Android 7.0 (API 24), suportado ang direktang text input sa pamamagitan ng RemoteInput.

Paggawa ng pangunahing aksyon

Upang lumikha ng button sa notification, kailangang tukuyin ang isang PendingIntent na ilulunsad kapag na-click. Maaaring magbukas ang PendingIntent ng Activity, magpatakbo ng Service, o BroadcastReceiver. Ang icon ng aksyon ay dapat na monochrome at sumunod sa 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("Kahilingan ng kumpirmasyon")
    .setContentText("Kumpirmahin ang paggawa ng gawain")
    .addAction(R.drawable.ic_accept, "Kumpirmahin", acceptPendingIntent)
    .build()

Aksyon na may text input (RemoteInput)

Para sa mga senaryo na nangangailangan ng text input (halimbawa, pagtugon sa mensahe), nagbibigay ang Android ng RemoteInput. Ang user ay naglalagay ng teksto nang direkta sa notification, at natatanggap ito ng app nang hindi binubuksan ang Activity. Ang RemoteInput ay suportado sa Android 7.0+ at nangangailangan ng tahasang pangangasiwa sa BroadcastReceiver o Service.

kotlin
val remoteInput = RemoteInput.Builder("reply_input")
    .setLabel("Ilagay ang sagot")
    .build()

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

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

Pangangasiwa ng mga aksyon sa Android

Kapag na-click ang isang aksyon, inilulunsad ng system ang tinukoy na PendingIntent. Upang makuha ang tekstong ipinasok mula sa RemoteInput, tawagan ang RemoteInput.getResultsFromIntent(intent). Inirerekomenda na pangasiwaan ang mga aksyon sa IntentService o WorkManager upang hindi harangan ang UI thread.

Notification Action sa iOS

Sa iOS, ang Notification Action ay ipinapatupad sa pamamagitan ng UserNotifications framework. Gumagawa ang developer ng mga kategorya ng aksyon (UNNotificationCategory) at nagrerehistro ng mga ito sa pagsisimula ng app. Bawat aksyon ay tinutukoy ng isang UNNotificationAction object na may natatanging identifier.

Pag-configure ng mga kategorya at aksyon sa iOS

Upang magdagdag ng mga aksyon sa push notification sa iOS, kailangang lumikha ng isang kategorya na nag-grupo ng mga kaugnay na aksyon. Ang kategorya ay tinutukoy sa payload ng notification sa pamamagitan ng field na category. Kapag natanggap ang notification, ipinapakita ng system ang mga available na aksyon mula sa tinukoy na kategorya.

swift
import UserNotifications

class NotificationSetup {

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

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

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

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

Pangangasiwa ng mga aksyon sa iOS

Kapag nag-click ang user sa isang aksyon, tinatawagan ng system ang method na userNotificationCenter:didReceiveNotificationResponse sa delegate ng UNUserNotificationCenter. Ang response.actionIdentifier ay naglalaman ng identifier ng isinagawang aksyon. Para sa text input, ginagamit ang UNTextInputNotificationAction na nagbibigay ng tekstong ipinasok ng user.

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()
    }
}

Mga uri at senaryo ng Notification Action

Ang Notification Action ay inuuri ayon sa uri ng interaksyon at senaryo ng paggamit. Ang tamang pagpili ng uri ng aksyon ay direktang nakakaapekto sa karanasan ng user at conversion sa target na aksyon.

Mga button na nagbubukas ng app

Ang pinakakaraniwang uri — button na nagbubukas ng app sa isang partikular na screen. Sa Android ginagamit ang PendingIntent.getActivity(), sa iOS — ang opsyon na .foreground para sa UNNotificationAction. Ginagamit para sa mga aksyon na nangangailangan ng buong interface, halimbawa pagtingin sa mga detalye ng order.

Mga aksyon sa background

Mga aksyon na isinasagawa nang hindi binubuksan ang app. Sa Android ginagamit ang PendingIntent.getBroadcast() o PendingIntent.getService(). Sa iOS — opsyon na .authenticationRequired o walang .foreground. Mga halimbawa: pagmarka ng gawain bilang natapos, pag-like ng post, pagdagdag sa mga paborito.

Text input

Nagpapahintulot sa user na maglagay ng teksto nang direkta sa notification. Sa Android ipinapatupad sa pamamagitan ng RemoteInput, sa iOS — sa pamamagitan ng UNTextInputNotificationAction. Ginagamit para sa pagtugon sa mga mensahe, komento, paglalagay ng mga one-time confirmation code.

Mga mapanirang aksyon

Mga aksyon na hindi na mababawi na nagbabago ng data — pagtanggal, pagtanggi, pag-block. Sa Android ay naiiba ang visual (pulang kulay sa ilang sistema), sa iOS ay nangangailangan ng opsyon na .destructive. Inirerekomenda ang paghingi ng kumpirmasyon para sa mga mapanirang aksyon, halimbawa sa pamamagitan ng karagdagang dialog o pangalawang pag-click.

Mga aksyong input na may text input

Isang hiwalay na klase ng mga aksyon — text input nang direkta mula sa notification. Sa Android ipinapatupad sa pamamagitan ng RemoteInput kasama ng PendingIntent. Sa iOS ginagamit ang UNTextInputNotificationAction na nagmamana sa UNNotificationAction. Ang ganitong mga aksyon ay ginagamit para sa mabilis na tugon sa mga messenger, paglalagay ng mga promo code, pagpuno ng mga feedback form, o pagsusuri ng kalidad ng serbisyo. Ang tekstong ipinasok ay ipinapadala sa app kasama ng identifier ng aksyon. Para sa tamang pangangasiwa ng text input sa parehong platform, kailangang ipatupad ang pag-parse ng ipinasok na data at validation bago isagawa ang target na aksyon.

Pangangasiwa ng mga pag-click at pag-log

Ang tamang pangangasiwa ng Notification Action ay kritikal para sa analytics at karanasan ng user. Bawat pag-click ay dapat i-log, at ang aksyon ay dapat isagawa nang maaasahan, kahit na sarado ang app.

Analytics at pagsubaybay

Subaybayan ang bawat pag-click sa Notification Action sa pamamagitan ng analytics system. Ang Firebase Analytics, Mixpanel, o Yandex.Metrica ay nagpapahintulot ng pagtatala ng identifier ng aksyon, oras ng pag-click, at konteksto ng notification. Ang datos na ito ay tumutulong sa pag-optimize ng estratehiya ng notification at pagtaas ng pakikilahok. Ang A/B testing na may iba’t ibang set ng aksyon ay tumutulong sa pagtukoy ng pinakamabisang senaryo ng interaksyon sa user.

Maaasahang pangangasiwa kapag sarado ang app

Kung sarado ang app, ipinapadala pa rin ng system ang Intent o UNNotificationResponse kapag nag-click sa isang aksyon. Sa Android, gamitin ang BroadcastReceiver para sa garantisadong pangangasiwa. Sa iOS, inilulunsad ng system ang app sa background at ipinapadala ang tugon sa delegate. Para sa mga kritikal na aksyon (kumpirmasyon ng pagbabayad, awtorisasyon), magdagdag ng mekanismo ng pagsubok muli at abiso sa user tungkol sa matagumpay na pagpapatupad.

Visual na pagpapasadya ng mga button sa Android

Mula sa Android 7.0, ang developer ay maaaring makaapekto sa pagpapakita ng Notification Action sa pamamagitan ng mga icon at kulay. Ang mga icon ay dapat na monochrome (alpha channel), may sukat na 24x24 dp. Sa iOS, limitado ang pagpapasadya ng button — ginagamit ang mga system color at font. Inirerekomenda ng Material Design ang paggrupo ng mga aksyon ayon sa priyoridad: pinakamahalagang aksyon una, mapanira ang huli.

Mga madalas itanong

Ilang aksyon ang maaaring idagdag sa isang notification?

Sa Android inirerekomenda ang hindi hihigit sa 3 aksyon, sa iOS hanggang 4. Ang paglampas sa limitasyon ay nagiging sanhi na ang ilang aksyon ay hindi naipapakita o nakatago sa submenu.

Paano magdagdag ng icon para sa Notification Action sa Android?

Ang icon ay ipinapasa sa NotificationCompat.Action.Builder bilang drawable resource. Ang icon ay dapat monochrome (alpha channel), may sukat na 24x24 dp, at sumunod sa mga alituntunin ng Material Design.

Gumagana ba ang Notification Action sa naka-lock na screen?

Oo, kung ang notification ay ipinapakita sa naka-lock na screen at ang visibility flag ay nakatakda sa VISIBILITY_PUBLIC. Sa iOS, kinakailangan ang opsyon na .authenticationRequired para sa mga aksyon na nangangailangan ng awtorisasyon.

Paano pangasiwaan ang pag-click sa aksyon kung ang app ay tinanggal mula sa memorya?

Sa Android, muling ginagawa ng system ang proseso at inihahatid ang Intent. Sa iOS, inilulunsad ng system ang app sa background. Maaaring garantisahin ang paghahatid gamit ang BroadcastReceiver sa Android at UNNotificationServiceExtension sa iOS.

Ano ang pagkakaiba ng aksyon sa Android at iOS sa mga tuntunin ng karanasan ng user?

Sa Android, ang mga aksyon ay agad na nakikita sa ilalim ng notification bilang mga icon. Sa iOS, ang mga aksyon ay nakatago sa likod ng matagal na pagpindot o pag-swipe. Ang UX na disenyo ng mga notification ay dapat isaalang-alang ang mga pagkakaibang ito ng platform.

Buod

  • Notification Action — mga button at input field sa push notification para sa mabilis na interaksyon.
  • Sa Android, ang mga aksyon ay nilikha sa pamamagitan ng NotificationCompat.Action na may PendingIntent.
  • Sa iOS, ang mga aksyon ay tinutukoy sa pamamagitan ng UNNotificationAction na may rehistrasyon ng kategorya.
  • Ang text input ay ipinapatupad sa pamamagitan ng RemoteInput (Android) o UNTextInputNotificationAction (iOS).
  • Maximum na bilang ng mga aksyon — 3 para sa Android, 4 para sa iOS.
  • Bawat aksyon ay dapat i-log sa analytics system para sa pag-optimize ng notification.
  • Para sa maaasahang pangangasiwa, gamitin ang BroadcastReceiver sa Android at AppDelegate sa iOS.

Gagawa kami ng mobile application na turnkey

Gumagawa ang IT Sectr ng mga iOS at Android application para sa mga startup at negosyo mula noong 2017. Magpapayo kami sa iyo at magmumungkahi ng pinakamahusay na solusyon.

Pag-usapan ang proyekto

Basahin din