Notification Action ในแอปมือถือ: คืออะไร ประเภทและการตั้งค่า

ผู้แต่ง: IT Sectr เผยแพร่เมื่อ: 2026-03-21 เวลาอ่าน: 8 นาที

Notification Action — ปุ่มโต้ตอบและช่องป้อนข้อมูลที่ปรากฏโดยตรงในการแจ้งเตือนแบบ push และช่วยให้ผู้ใช้ดำเนินการได้โดยไม่ต้องเปิดแอป นี่คือองค์ประกอบสำคัญของประสบการณ์ผู้ใช้ ที่ช่วยลดเส้นทางไปยังหน้าจอเป้าหมาย ตามข้อมูลจาก Android Developers, 2025 Notification Action ช่วยเพิ่มการมีส่วนร่วมของผู้ใช้ได้ถึง 40% โดยลดแรงเสียดทานในการโต้ตอบ

ประเด็นสำคัญ

  • Notification Action — องค์ประกอบโต้ตอบในการแจ้งเตือนแบบ push สำหรับดำเนินการงานอย่างรวดเร็ว
  • บน Android การดำเนินการจะถูกนำไปใช้ผ่าน PendingIntent และ NotificationCompat.Action.Builder
  • บน iOS การดำเนินการจะถูกกำหนดค่าผ่าน UNNotificationAction และ UNNotificationCategory
  • รองรับปุ่ม การป้อนข้อความ การทำเครื่องหมายว่าสำเร็จ และการดำเนินการที่เลื่อนออกไป
  • แต่ละการดำเนินการจะต้องได้รับการจัดการใน callback ของแอปเมื่อแตะ

Notification Action คืออะไร

Notification Action คือองค์ประกอบอินเทอร์เฟซแบบโต้ตอบที่เพิ่มเข้าไปในการแจ้งเตือนแบบ push เพื่อดำเนินการเฉพาะ ผู้ใช้สามารถตอบกลับข้อความ ยืนยันงาน หรือเปิดหน้าจอเฉพาะได้โดยไม่ต้องเข้าไปในแอป การดำเนินการจะแสดงเป็นปุ่มใต้ข้อความการแจ้งเตือนหรือในมุมมองแบบขยายเมื่อปัด

ทำไมจึงต้องมีการดำเนินการในการแจ้งเตือน

วัตถุประสงค์หลักของ Notification Action คือการลดจำนวนขั้นตอนที่ผู้ใช้ต้องทำเพื่อไปถึงเป้าหมาย แทนที่จะเปิดแอปและนำทางไปยังหน้าจอที่ต้องการ ผู้ใช้เพียงกดปุ่มเดียว การวิจัยแสดงให้เห็นว่าแอปที่มี การแจ้งเตือนแบบโต้ตอบ มีการมีส่วนร่วมสูงกว่า 25–40% เมื่อเทียบกับการแจ้งเตือนแบบธรรมดา

การแสดงผลบนแพลตฟอร์มต่างๆ

บน Android Notification Action จะแสดงเป็นปุ่มไอคอนในมุมมองแบบกะทัดรัดและปุ่มข้อความในโหมดขยายได้ บน iOS การดำเนินการจะปรากฏเมื่อกดค้างที่การแจ้งเตือนหรือปัดไปทางซ้าย แต่ละแพลตฟอร์ม มีคำแนะนำของตนเองเกี่ยวกับจำนวนการดำเนินการ — Android แนะนำไม่เกิน 3, iOS ไม่เกิน 4

แพลตฟอร์มสูงสุดของการดำเนินการวิธีการแสดงประเภทการดำเนินการ
Android3ไอคอน + ข้อความปุ่ม, การป้อนข้อความ
iOS4กดค้าง / ปัดปุ่ม, การป้อนข้อความ

Notification Action บน Android

บน Android Notification Action จะถูกสร้างขึ้นผ่าน NotificationCompat.Builder โดยใช้เมธอด addAction() แต่ละการดำเนินการประกอบด้วยไอคอน ข้อความ และ PendingIntent ที่จะทำงานเมื่อแตะ ตั้งแต่ Android 7.0 (API 24) รองรับการป้อนข้อความโดยตรงผ่าน RemoteInput

การสร้างการดำเนินการพื้นฐาน

ในการสร้างปุ่มในการแจ้งเตือน จำเป็นต้องกำหนด PendingIntent ที่จะถูกเรียกใช้เมื่อแตะ PendingIntent สามารถเปิด Activity เริ่ม Service หรือ BroadcastReceiver ไอคอนการดำเนินการต้องเป็นสีเดียวและสอดคล้องกับ 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("คำขอการยืนยัน")
    .setContentText("โปรดยืนยันการทำงานให้เสร็จสิ้น")
    .addAction(R.drawable.ic_accept, "ยืนยัน", acceptPendingIntent)
    .build()

การดำเนินการพร้อมการป้อนข้อความ (RemoteInput)

สำหรับสถานการณ์ที่ต้องการการป้อนข้อความ (เช่น การตอบกลับข้อความ) Android มี RemoteInput ผู้ใช้ป้อนข้อความโดยตรงในการแจ้งเตือน และแอปจะรับข้อความนั้นโดยไม่ต้องเปิด Activity RemoteInput รองรับบน Android 7.0+ และต้องการการจัดการที่ชัดเจนใน BroadcastReceiver หรือ Service

kotlin
val remoteInput = RemoteInput.Builder("reply_input")
    .setLabel("ป้อนคำตอบ")
    .build()

val replyAction = NotificationCompat.Action.Builder(
    R.drawable.ic_reply, "ตอบกลับ", replyPendingIntent
)
    .addRemoteInput(remoteInput)
    .build()

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

การจัดการการดำเนินการบน Android

เมื่อมีการแตะการดำเนินการ ระบบจะเรียกใช้ PendingIntent ที่ระบุ ในการรับข้อความที่ป้อนผ่าน RemoteInput ให้เรียก RemoteInput.getResultsFromIntent(intent) แนะนำให้จัดการการดำเนินการใน IntentService หรือ WorkManager เพื่อไม่ให้บล็อกเธรด UI

Notification Action บน iOS

บน iOS Notification Action จะถูกนำไปใช้ผ่านเฟรมเวิร์ก UserNotifications นักพัฒนาสร้างหมวดหมู่การดำเนินการ (UNNotificationCategory) และลงทะเบียนเมื่อเริ่มต้นแอป แต่ละการดำเนินการถูกกำหนดโดยวัตถุ UNNotificationAction พร้อมตัวระบุที่ไม่ซ้ำกัน

การตั้งค่าหมวดหมู่และการดำเนินการบน iOS

ในการเพิ่มการดำเนินการในการแจ้งเตือนแบบ push บน iOS จำเป็นต้องสร้างหมวดหมู่ที่จัดกลุ่มการดำเนินการที่เกี่ยวข้อง หมวดหมู่จะระบุในเพย์โหลดการแจ้งเตือนผ่านฟิลด์ category เมื่อได้รับการแจ้งเตือน ระบบจะแสดงการดำเนินการที่มีจากหมวดหมู่ที่ระบุ

swift
import UserNotifications

class NotificationSetup {

    func registerNotificationCategories() {
        let approveAction = UNNotificationAction(
            identifier: "APPROVE_ACTION",
            title: "อนุมัติ",
            options: [.foreground]
        )

        let declineAction = UNNotificationAction(
            identifier: "DECLINE_ACTION",
            title: "ปฏิเสธ",
            options: [.destructive]
        )

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

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

การจัดการการดำเนินการบน iOS

เมื่อผู้ใช้แตะการดำเนินการ ระบบจะเรียกเมธอด userNotificationCenter:didReceiveNotificationResponse ในตัวแทนของ UNUserNotificationCenter response.actionIdentifier ประกอบด้วยตัวระบุของการดำเนินการที่ดำเนินการ สำหรับการป้อนข้อความ จะใช้ UNTextInputNotificationAction ซึ่งให้ข้อความที่ผู้ใช้ป้อน

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

ประเภทและสถานการณ์ของ Notification Action

Notification Action ถูกจำแนกตามประเภทการโต้ตอบและสถานการณ์การใช้งาน การเลือกประเภทการดำเนินการที่ถูกต้องส่งผลโดยตรงต่อประสบการณ์ผู้ใช้และการแปลงไปสู่การดำเนินการเป้าหมาย

ปุ่มที่เปิดแอป

ประเภทที่พบมากที่สุด — ปุ่มที่เปิดแอปบนหน้าจอเฉพาะ บน Android ใช้ PendingIntent.getActivity() บน iOS — ตัวเลือก .foreground ของ UNNotificationAction ใช้สำหรับการดำเนินการที่ต้องการอินเทอร์เฟซเต็มรูปแบบ เช่น การดูรายละเอียดคำสั่งซื้อ

การดำเนินการเบื้องหลัง

การดำเนินการที่ทำงานโดยไม่ต้องเปิดแอป บน Android ใช้ PendingIntent.getBroadcast() หรือ PendingIntent.getService() บน iOS — ตัวเลือก .authenticationRequired หรือไม่มี .foreground ตัวอย่าง: ทำเครื่องหมายงานว่าสำเร็จ กดถูกใจโพสต์ เพิ่มในรายการโปรด

การป้อนข้อความ

ช่วยให้ผู้ใช้ป้อนข้อความโดยตรงในการแจ้งเตือน บน Android ดำเนินการผ่าน RemoteInput บน iOS — ผ่าน UNTextInputNotificationAction ใช้สำหรับตอบกลับข้อความ แสดงความคิดเห็น ป้อนรหัสยืนยันแบบครั้งเดียว

การดำเนินการแบบทำลาย

การดำเนินการที่เปลี่ยนแปลงข้อมูลอย่างไม่สามารถย้อนกลับได้ — การลบ การปฏิเสธ การบล็อก บน Android จะถูกเน้นด้วยสายตา (สีแดงในบางระบบ) บน iOS ต้องการตัวเลือก .destructive แนะนำให้ขอการยืนยันสำหรับการดำเนินการแบบทำลาย เช่น ผ่านไดอะล็อกเพิ่มเติมหรือการแตะครั้งที่สอง

การดำเนินการป้อนข้อมูลพร้อมการป้อนข้อความ

คลาสแยกของการดำเนินการ — การป้อนข้อความโดยตรงจากการแจ้งเตือน บน Android ดำเนินการผ่าน RemoteInput ร่วมกับ PendingIntent บน iOS ใช้ UNTextInputNotificationAction ซึ่งสืบทอดจาก UNNotificationAction การดำเนินการดังกล่าวใช้สำหรับ การตอบกลับด่วน ในแอปแชท การป้อนรหัสโปรโมชั่น การกรอกแบบฟอร์มคำติชม หรือการให้คะแนนคุณภาพบริการ ข้อความที่ป้อนจะถูกส่งไปยังแอปพร้อมกับตัวระบุการดำเนินการ สำหรับการจัดการการป้อนข้อความที่ถูกต้องบนทั้งสองแพลตฟอร์ม จำเป็นต้องดำเนินการแยกวิเคราะห์ข้อมูลที่ป้อนและการตรวจสอบความถูกต้องก่อนดำเนินการเป้าหมาย

การจัดการการแตะและการบันทึก

การจัดการ Notification Action ที่ถูกต้องมีความสำคัญต่อการวิเคราะห์และประสบการณ์ผู้ใช้ การแตะแต่ละครั้งต้องถูกบันทึก และการดำเนินการต้องดำเนินการอย่างน่าเชื่อถือแม้ว่าแอปจะถูกปิด

การวิเคราะห์และการติดตาม

ติดตามการแตะ Notification Action แต่ละครั้งผ่านระบบวิเคราะห์ของคุณ Firebase Analytics, Mixpanel หรือ Yandex.Metrica ช่วยให้บันทึกตัวระบุการดำเนินการ เวลาแตะ และบริบทการแจ้งเตือน ข้อมูลนี้ช่วยปรับ กลยุทธ์การแจ้งเตือน และเพิ่มการมีส่วนร่วม การทดสอบ A/B ด้วยชุดการดำเนินการที่แตกต่างกันช่วยระบุสถานการณ์การโต้ตอบที่มีประสิทธิภาพสูงสุดกับผู้ใช้

การจัดการที่เชื่อถือได้เมื่อแอปถูกปิด

หากแอปถูกปิด ระบบยังคงส่ง Intent หรือ UNNotificationResponse เมื่อแตะการดำเนินการ บน Android ใช้ BroadcastReceiver สำหรับการจัดการที่รับประกัน บน iOS ระบบจะเริ่มแอปในเบื้องหลังและส่งการตอบกลับไปยังตัวแทน สำหรับการดำเนินการที่สำคัญ (การยืนยันการชำระเงิน การอนุญาต) ให้เพิ่มกลไกการลองใหม่และแจ้งให้ผู้ใช้ทราบเกี่ยวกับความสำเร็จ

การปรับแต่งปุ่มบน Android

ตั้งแต่ Android 7.0 นักพัฒนาสามารถมีอิทธิพลต่อลักษณะของ Notification Action ผ่านไอคอนและสี ไอคอนต้องเป็นสีเดียว (ช่องอัลฟ่า) ขนาด 24x24 dp บน iOS การปรับแต่งปุ่มมีข้อจำกัด — ใช้สีและแบบอักษรของระบบ Material Design แนะนำให้จัดกลุ่มการดำเนินการตามลำดับความสำคัญ: การดำเนินการที่สำคัญที่สุดก่อน การดำเนินการแบบทำลายสุดท้าย

คำถามที่พบบ่อย

สามารถเพิ่มการดำเนินการได้กี่รายการในการแจ้งเตือนเดียว?

Android แนะนำไม่เกิน 3 การดำเนินการ iOS — สูงสุด 4 การเกินขีดจำกัดทำให้บางการดำเนินการไม่แสดงหรือซ่อนในเมนูย่อย

วิธีเพิ่มไอคอนสำหรับ Notification Action บน Android?

ไอคอนจะถูกส่งใน NotificationCompat.Action.Builder เป็นทรัพยากร drawable ไอคอนต้องเป็นสีเดียว (ช่องอัลฟ่า) ขนาด 24x24 dp และสอดคล้องกับแนวทาง Material Design

Notification Action ทำงานบนหน้าจอล็อคหรือไม่?

ใช่ หากการแจ้งเตือนแสดงบนหน้าจอล็อคและตั้งค่าแฟล็ก visibility เป็น VISIBILITY_PUBLIC บน iOS จำเป็นต้องมีตัวเลือก .authenticationRequired สำหรับการดำเนินการที่ต้องการการอนุญาต

วิธีจัดการการแตะการดำเนินการหากแอปถูกลบออกจากหน่วยความจำ?

บน Android ระบบจะสร้างกระบวนการใหม่และส่ง Intent บน iOS ระบบจะเริ่มแอปในเบื้องหลัง การรับประกันการส่งสามารถทำได้โดยใช้ BroadcastReceiver บน Android และ UNNotificationServiceExtension บน iOS

ประสบการณ์ผู้ใช้ของการดำเนินการแตกต่างกันอย่างไรระหว่าง Android และ iOS?

บน Android การดำเนินการจะมองเห็นได้โดยตรงใต้การแจ้งเตือนเป็นไอคอน บน iOS การดำเนินการจะซ่อนอยู่หลังการกดค้างหรือการปัด การออกแบบ UX ของการแจ้งเตือนต้องคำนึงถึงความแตกต่างของแพลตฟอร์มเหล่านี้

สรุป

  • Notification Action — ปุ่มและช่องป้อนข้อมูลในการแจ้งเตือนแบบ push สำหรับการโต้ตอบที่รวดเร็ว
  • บน Android การดำเนินการถูกสร้างผ่าน NotificationCompat.Action ด้วย PendingIntent
  • บน iOS การดำเนินการถูกกำหนดผ่าน UNNotificationAction พร้อมการลงทะเบียนหมวดหมู่
  • การป้อนข้อความดำเนินการผ่าน RemoteInput (Android) หรือ UNTextInputNotificationAction (iOS)
  • จำนวนการดำเนินการสูงสุด — 3 สำหรับ Android, 4 สำหรับ iOS
  • แต่ละการดำเนินการควรถูกบันทึกในระบบวิเคราะห์เพื่อปรับการแจ้งเตือนให้เหมาะสม
  • สำหรับการจัดการที่เชื่อถือได้ ใช้ BroadcastReceiver บน Android และ AppDelegate บน iOS

เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร

IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ

ปรึกษาโครงการ

อ่านเพิ่มเติม