Notification Action mobil ilovalarda: bu nima, turlari va sozlamalari

Muallif: IT Sectr Nashr etilgan: 2026-03-21 O'qish vaqti: 8 daq

Notification Action — push bildirishnomada to'g'ridan-to'g'ri ko'rsatiladigan va foydalanuvchiga ilovani ochmasdan harakatni bajarishga imkon beradigan interaktiv tugmalar va matn maydonlari. Bu foydalanuvchi tajribasining asosiy elementi bo'lib, maqsadli ekranga borish yo'lini qisqartiradi. Android Developers, 2025 ma'lumotlariga ko'ra, Notification Action o'zaro ta'sirdagi ishqalanishni kamaytirish orqali foydalanuvchi jalb qilinishini 40% gacha oshiradi.

Asosiy fikrlar

  • Notification Action — push bildirishnomada vazifalarni tez bajarish uchun interaktiv element.
  • Android-da harakatlar PendingIntent va NotificationCompat.Action.Builder orqali amalga oshiriladi.
  • iOS-da harakatlar UNNotificationAction va UNNotificationCategory orqali sozlanadi.
  • Tugmalar, matn kiritish, “bajarildi” belgisi va kechiktirilgan harakatlar qo'llab-quvvatlanadi.
  • Har bir harakat bosilganda ilovaning callbackida qayta ishlanishi kerak.

Notification Action nima

Notification Action — ma'lum bir harakatni bajarish uchun push bildirishnomaga qo'shiladigan interaktiv interfeys elementi. Foydalanuvchi ilovaga kirmasdan xabarga javob berishi, vazifani tasdiqlashi yoki ma'lum ekranni ochishi mumkin. Harakatlar bildirishnoma matni ostidagi tugmalar yoki surish paytida kengaytirilgan ko'rinishda ko'rsatiladi.

Nima uchun bildirishnomalarda harakatlar kerak

Notification Actionning asosiy maqsadi foydalanuvchining maqsadiga erishish uchun zarur qadamlar sonini kamaytirishdir. Ilovani ochish va kerakli ekranga navigatsiya qilish o'rniga, foydalanuvchi bitta tugmani bosadi. Tadqiqotlar shuni ko'rsatadiki, interaktiv bildirishnomalarga ega ilovalar oddiy bildirishnomalarga nisbatan 25–40% yuqori jalb qilish darajasiga ega.

Turli platformalarda vizual ko'rinish

Android-da Notification Action yig'ilgan ko'rinishda ikon-tugmalar va kengaytirilgan rejimda matnli tugmalar sifatida ko'rsatiladi. iOS-da harakatlar bildirishnomani uzoq bosish yoki chapga surish bilan paydo bo'ladi. Har bir platforma harakatlar soni bo'yicha o'z tavsiyalariga ega — Android 3 tadan, iOS esa 4 tadan ko'p bo'lmasligini tavsiya qiladi.

PlatformaMaks. harakatlarKo'rsatish usuliHarakat turlari
Android3Ikonlar + matnTugmalar, matn kiritish
iOS4Uzoq bosish / surishTugmalar, matn kiritish

Android-da Notification Action

Android-da Notification Action NotificationCompat.Builder orqali addAction() metodidan foydalanib yaratiladi. Har bir harakat ikonka, matn va bosilganda ishga tushadigan PendingIntentni o'z ichiga oladi. Android 7.0 (API 24) dan boshlab RemoteInput orqali to'g'ridan-to'g'ri matn kiritish qo'llab-quvvatlanadi.

Asosiy harakatni yaratish

Bildirishnomada tugma yaratish uchun bosilganda ishga tushadigan PendingIntent aniqlanishi kerak. PendingIntent Activity ochishi, Service yoki BroadcastReceiver ishga tushirishi mumkin. Harakat ikonkasi monoxrom bo'lishi va Material Designga mos kelishi kerak.

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("Tasdiqlash so'rovi")
    .setContentText("Vazifaning bajarilishini tasdiqlang")
    .addAction(R.drawable.ic_accept, "Tasdiqlash", acceptPendingIntent)
    .build()

Matn kiritish bilan harakat (RemoteInput)

Matn kiritishni talab qiladigan stsenariylarda (masalan, xabarga javob) Android RemoteInputni taqdim etadi. Foydalanuvchi matnni to'g'ridan-to'g'ri bildirishnomaga kiritadi va ilova uni Activity ochmasdan oladi. RemoteInput Android 7.0+ da qo'llab-quvvatlanadi va BroadcastReceiver yoki Service-da aniq qayta ishlashni talab qiladi.

kotlin
val remoteInput = RemoteInput.Builder("reply_input")
    .setLabel("Javobni kiriting")
    .build()

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

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

Android-da harakatlarni qayta ishlash

Harakat bosilganda tizim belgilangan PendingIntentni ishga tushiradi. RemoteInputdan kiritilgan matnni olish uchun RemoteInput.getResultsFromIntent(intent) chaqiriladi. UI ipini bloklamaslik uchun harakatlarni IntentService yoki WorkManagerda qayta ishlash tavsiya etiladi.

iOS-da Notification Action

iOS-da Notification Action UserNotifications frameworki orqali amalga oshiriladi. Dasturchi harakat kategoriyalarini (UNNotificationCategory) yaratadi va ularni ilova ishga tushganda ro'yxatdan o'tkazadi. Har bir harakat noyob identifikatorga ega UNNotificationAction obyekti bilan belgilanadi.

iOS-da kategoriyalar va harakatlarni sozlash

iOS push bildirishnomalariga harakatlar qo'shish uchun bog'liq harakatlarni guruhlaydigan kategoriya yaratilishi kerak. Kategoriya bildirishnoma yukida category maydoni orqali ko'rsatiladi. Bildirishnoma olinganda tizim belgilangan kategoriyadan mavjud harakatlarni ko'rsatadi.

swift
import UserNotifications

class NotificationSetup {

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

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

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

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

iOS-da harakatlarni qayta ishlash

Foydalanuvchi harakatni bosganda tizim UNUserNotificationCenter delegatida userNotificationCenter:didReceiveNotificationResponse metodini chaqiradi. response.actionIdentifier bajarilgan harakatning identifikatorini o'z ichiga oladi. Matn kiritish uchun foydalanuvchi tomonidan kiritilgan matnni ta'minlaydigan UNTextInputNotificationAction ishlatiladi.

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 turlari va stsenariylar

Notification Action o'zaro ta'sir turi va foydalanish stsenariysi bo'yicha tasniflanadi. Harakat turining to'g'ri tanlanishi foydalanuvchi tajribasiga va maqsadli harakatga konversiyaga bevosita ta'sir qiladi.

Ilovani ishga tushiradigan tugmalar

Eng keng tarqalgan tur — ilovani ma'lum ekranda ochadigan tugma. Android-da PendingIntent.getActivity(), iOS-da UNNotificationAction uchun .foreground opsiyasi ishlatiladi. To'liq interfeysni talab qiladigan harakatlar uchun qo'llaniladi, masalan buyurtma tafsilotlarini ko'rish.

Fon harakatlari

Ilovani ochmasdan bajariladigan harakatlar. Android-da PendingIntent.getBroadcast() yoki PendingIntent.getService() ishlatiladi. iOS-da — .authenticationRequired opsiyasi yoki .foregroundsiz. Misollar: vazifani bajarilgan deb belgilash, postni yoqtirish, sevimlilarga qo'shish.

Matn kiritish

Foydalanuvchiga to'g'ridan-to'g'ri bildirishnomaga matn kiritish imkonini beradi. Android-da RemoteInput orqali, iOS-da UNTextInputNotificationAction orqali amalga oshiriladi. Xabarlarga javob berish, sharhlar, bir martalik tasdiq kodlarini kiritish uchun ishlatiladi.

Buzg'unchi harakatlar

Ma'lumotlarni qaytarib bo'lmaydigan darajada o'zgartiradigan harakatlar — o'chirish, rad etish, bloklash. Android-da vizual ravishda ajralib turadi (ba'zi tizimlarda qizil rang), iOS-da .destructive opsiyasini talab qiladi. Buzg'unchi harakatlar uchun qo'shimcha dialog yoki ikkinchi bosish orqali tasdiqlash tavsiya etiladi.

Matn kiritish bilan kirish harakatlari

Alohida harakatlar sinfi — bildirishnomadan to'g'ridan-to'g'ri matn kiritish. Android-da RemoteInputning PendingIntent bilan kombinatsiyasi orqali amalga oshiriladi. iOS-da UNNotificationAction dan meros olgan UNTextInputNotificationAction ishlatiladi. Bunday harakatlar tezkor javoblar uchun messenjerlarda, promo kodlarni kiritishda, fikr-mulohaza shakllarini to'ldirishda yoki xizmat sifatini baholashda qo'llaniladi. Kiritilgan matn harakat identifikatori bilan birga ilovaga uzatiladi. Ikkala platformada matn kiritishni to'g'ri qayta ishlash uchun kiritilgan ma'lumotlarni tahlil qilish va maqsadli harakatni bajarishdan oldin validatsiyani amalga oshirish kerak.

Bosishlarni qayta ishlash va loglash

Notification Actionni to'g'ri qayta ishlash analitika va foydalanuvchi tajribasi uchun juda muhimdir. Har bir bosish loglanishi va harakat ilova yopiq bo'lsa ham ishonchli bajarilishi kerak.

Analitika va kuzatish

Har bir Notification Action bosishini analitik tizim orqali kuzatib boring. Firebase Analytics, Mixpanel yoki Yandex.Metrica harakat identifikatori, bosish vaqti va bildirishnoma kontekstini qayd etish imkonini beradi. Bu ma'lumotlar bildirishnoma strategiyasini optimallashtirish va jalb qilishni oshirishga yordam beradi. Turli harakat to'plamlari bilan A/B testlari foydalanuvchi bilan o'zaro ta'sirning eng samarali stsenariylarini aniqlashga yordam beradi.

Ilova yopiq holda ishonchli qayta ishlash

Ilova yopiq bo'lsa ham, tizim harakat bosilganda Intent yoki UNNotificationResponse yetkazib beradi. Android-da kafolatlangan qayta ishlash uchun BroadcastReceiver dan foydalaning. iOS-da tizim ilovani fonda ishga tushiradi va javobni delegatga uzatadi. Kritik harakatlar (to'lovni tasdiqlash, avtorizatsiya) uchun qayta urinish mexanizmi va foydalanuvchiga muvaffaqiyatli bajarish haqida bildirishnoma qo'shing.

Android-da tugmalarni vizual sozlash

Android 7.0 dan boshlab dasturchi Notification Action ko'rinishiga ikonkalar va ranglar orqali ta'sir qilishi mumkin. Ikonkalar monoxrom (alfa kanal), o'lchami 24x24 dp bo'lishi kerak. iOS-da tugmalarni sozlash cheklangan — tizim ranglari va shriftlari ishlatiladi. Material Design harakatlarni ustuvorlik bo'yicha guruhlashni tavsiya qiladi: eng muhim harakat birinchi, buzg'unchilar oxirgi.

Tez-tez beriladigan savollar

Bitta bildirishnomaga nechta harakat qo'shish mumkin?

Android-da 3 tadan ko'p bo'lmagan harakat tavsiya etiladi, iOS-da 4 tagacha. Cheklovdan oshib ketish ba'zi harakatlarning ko'rsatilmasligiga yoki pastki menyuda yashirinishiga olib keladi.

Android-da Notification Action uchun ikonkoni qanday qo'shish mumkin?

Ikonka NotificationCompat.Action.Builder ga drawable resurs sifatida uzatiladi. Ikonka monoxrom (alfa kanal), o'lchami 24x24 dp bo'lishi va Material Design tavsiyalariga mos kelishi kerak.

Notification Action bloklangan ekranda ishlaydimi?

Ha, agar bildirishnoma bloklangan ekranda ko'rsatilsa va visibility flagi VISIBILITY_PUBLIC qilib o'rnatilgan bo'lsa. iOS-da avtorizatsiyani talab qiladigan harakatlar uchun .authenticationRequired opsiyasi kerak.

Ilova xotiradan o'chirilganda harakat bosilishini qanday qayta ishlash mumkin?

Android-da tizim jarayonni qayta yaratadi va Intentni yetkazib beradi. iOS-da tizim ilovani fonda ishga tushiradi. Android-da BroadcastReceiver va iOS-da UNNotificationServiceExtension yordamida yetkazib berishni kafolatlash mumkin.

Android va iOS-dagi harakatlar foydalanuvchi tajribasi jihatidan qanday farq qiladi?

Android-da harakatlar bildirishnoma ostida darhol ikonkalar sifatida ko'rinadi. iOS-da harakatlar uzoq bosish yoki surish orqali ochiladi. Bildirishnomalarning UX dizayni bu platforma farqlarini hisobga olishi kerak.

Xulosa

  • Notification Action — tezkor o'zaro ta'sir uchun push bildirishnomalardagi tugmalar va matn maydonlari.
  • Android-da harakatlar NotificationCompat.Action va PendingIntent bilan yaratiladi.
  • iOS-da harakatlar UNNotificationAction va kategoriya ro'yxatdan o'tkazish bilan belgilanadi.
  • Matn kiritish RemoteInput (Android) yoki UNTextInputNotificationAction (iOS) orqali amalga oshiriladi.
  • Maksimal harakatlar soni — Android uchun 3, iOS uchun 4.
  • Har bir harakat bildirishnomalarni optimallashtirish uchun analitik tizimda loglanishi kerak.
  • Ishonchli qayta ishlash uchun Android-da BroadcastReceiver, iOS-da AppDelegate dan foydalaning.

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing