Mobil Uygulamalarda Notification Action: Nedir, Çeşitleri ve Kurulumu

Yazar: IT Sectr Yayınlanma: 2026-03-21 Okuma süresi: 8 dk

Notification Action — push bildiriminde doğrudan görünen ve kullanıcının uygulamayı açmadan bir işlem gerçekleştirmesini sağlayan etkileşimli düğmeler ve giriş alanlarıdır. Bu, kullanıcı deneyiminin önemli bir unsurudur ve hedef ekrana giden yolu kısaltır. Android Developers, 2025'e göre, Notification Action etkileşimdeki sürtüşmeyi azaltarak kullanıcı katılımını %40'a kadar artırır.

Önemli Noktalar

  • Notification Action — hızlı görev yürütme için push bildirimlerinde etkileşimli öğe.
  • Android'de işlemler PendingIntent ve NotificationCompat.Action.Builder aracılığıyla uygulanır.
  • iOS'ta işlemler UNNotificationAction ve UNNotificationCategory aracılığıyla yapılandırılır.
  • Düğmeler, metin girişi, tamamlandı olarak işaretleme ve ertelenmiş işlemler desteklenir.
  • Her işlem, dokunulduğunda uygulamanın geri aramasında işlenmelidir.

Notification Action Nedir

Notification Action, belirli bir işlemi gerçekleştirmek için push bildirimine eklenen etkileşimli bir arayüz öğesidir. Kullanıcı, uygulamaya girmeden bir mesaja yanıt verebilir, bir görevi onaylayabilir veya belirli bir ekranı açabilir. İşlemler, bildirim metninin altında düğmeler olarak veya kaydırma sırasında genişletilmiş görünümde görünür.

Bildirimlerde Neden İşlemlere İhtiyaç Var

Notification Action'ın temel amacı, kullanıcının hedefine ulaşması için gereken adım sayısını azaltmaktır. Uygulamayı açıp istenen ekrana gitmek yerine, kullanıcı tek bir düğmeye basar. Araştırmalar, etkileşimli bildirimlere sahip uygulamaların basit bildirimlere kıyasla %25–40 daha yüksek katılım gösterdiğini ortaya koymaktadır.

Farklı Platformlarda Görsel Sunum

Android'de Notification Action, kompakt görünümde simge düğmeleri ve genişletilebilir modda metin düğmeleri olarak görüntülenir. iOS'ta işlemler, bildirime uzun basıldığında veya sola kaydırıldığında görünür. Her platformun işlem sayısıyla ilgili kendi önerileri vardır — Android en fazla 3, iOS en fazla 4 önerir.

PlatformMaks. İşlemGörüntüleme Yöntemiİşlem Türleri
Android3Simge + MetinDüğmeler, Metin Girişi
iOS4Uzun Basma / KaydırmaDüğmeler, Metin Girişi

Android'de Notification Action

Android'de, Notification Action, NotificationCompat.Builder kullanılarak addAction() yöntemiyle oluşturulur. Her işlem bir simge, metin ve dokunulduğunda tetiklenen PendingIntent içerir. Android 7.0 (API 24)'ten itibaren RemoteInput aracılığıyla doğrudan metin girişi desteklenir.

Temel İşlem Oluşturma

Bir bildirimde düğme oluşturmak için, dokunulduğunda başlatılacak bir PendingIntent tanımlamak gerekir. PendingIntent bir Activity açabilir, Service veya BroadcastReceiver başlatabilir. İşlem simgesi tek renkli olmalı ve Material Design'a uygun olmalıdır.

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("Onay talebi")
    .setContentText("Görevin tamamlandığını onaylayın")
    .addAction(R.drawable.ic_accept, "Onayla", acceptPendingIntent)
    .build()

Metin Girişli İşlem (RemoteInput)

Metin girişi gerektiren senaryolar için (örneğin, bir mesaja yanıt verme), Android RemoteInput sağlar. Kullanıcı metni doğrudan bildirime girer ve uygulama bir Activity açmadan alır. RemoteInput, Android 7.0+'da desteklenir ve bir BroadcastReceiver veya Service'de açık işleme gerektirir.

kotlin
val remoteInput = RemoteInput.Builder("reply_input")
    .setLabel("Yanıtı girin")
    .build()

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

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

Android'de İşlemleri İşleme

Bir işleme dokunulduğunda, sistem belirtilen PendingIntent'i başlatır. RemoteInput aracılığıyla girilen metni almak için RemoteInput.getResultsFromIntent(intent) çağrısını yapın. UI iş parçacığını bloke etmemek için işlemlerin IntentService veya WorkManager'da işlenmesi önerilir.

iOS'ta Notification Action

iOS'ta, Notification Action, UserNotifications çerçevesi aracılığıyla uygulanır. Geliştirici işlem kategorileri (UNNotificationCategory) oluşturur ve bunları uygulama başlangıcında kaydeder. Her işlem, benzersiz bir tanımlayıcıya sahip UNNotificationAction nesnesiyle tanımlanır.

iOS'ta Kategorileri ve İşlemleri Ayarlama

iOS'ta push bildirimlerine işlem eklemek için, ilgili işlemleri gruplayan bir kategori oluşturmak gerekir. Kategori, bildirim yükünde category alanı aracılığıyla belirtilir. Bir bildirim alındığında, sistem belirtilen kategoriden kullanılabilir işlemleri görüntüler.

swift
import UserNotifications

class NotificationSetup {

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

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

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

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

iOS'ta İşlemleri İşleme

Kullanıcı bir işleme dokunduğunda, sistem UNUserNotificationCenter temsilcisinde userNotificationCenter:didReceiveNotificationResponse yöntemini çağırır. response.actionIdentifier, gerçekleştirilen işlemin tanımlayıcısını içerir. Metin girişi için, kullanıcının girdiği metni sağlayan UNTextInputNotificationAction kullanılır.

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 Türleri ve Senaryoları

Notification Action, etkileşim türüne ve kullanım senaryosuna göre sınıflandırılır. İşlem türünün doğru seçimi, kullanıcı deneyimini ve hedef işleme dönüşümü doğrudan etkiler.

Uygulama Başlatmalı Düğmeler

En yaygın tür — uygulamayı belirli bir ekranda açan düğme. Android'de PendingIntent.getActivity(), iOS'ta UNNotificationAction'ın .foreground seçeneği kullanılır. Sipariş ayrıntılarını görüntüleme gibi tam arayüz gerektiren işlemler için kullanılır.

Arka Plan İşlemleri

Uygulamayı açmadan yürütülen işlemler. Android'de PendingIntent.getBroadcast() veya PendingIntent.getService() kullanılır. iOS'ta — .authenticationRequired seçeneği veya .foreground olmadan. Örnekler: görevi tamamlandı olarak işaretleme, gönderiyi beğenme, favorilere ekleme.

Metin Girişi

Kullanıcının doğrudan bildirime metin girmesini sağlar. Android'de RemoteInput aracılığıyla, iOS'ta UNTextInputNotificationAction aracılığıyla uygulanır. Mesajlara yanıt verme, yorumlar, tek kullanımlık doğrulama kodları girmek için kullanılır.

Yıkıcı İşlemler

Verileri geri döndürülemez şekilde değiştiren işlemler — silme, reddetme, engelleme. Android'de görsel olarak vurgulanır (bazı sistemlerde kırmızı renk), iOS'ta .destructive seçeneği gerektirir. Yıkıcı işlemler için, örneğin ek bir iletişim kutusu veya ikinci bir dokunuş yoluyla onay istenmesi önerilir.

Metin Girişli Girdi İşlemleri

Ayrı bir işlem sınıfı — bildirimden doğrudan metin girişi. Android'de bu, PendingIntent ile birlikte RemoteInput aracılığıyla uygulanır. iOS'ta, UNNotificationAction'dan miras alan UNTextInputNotificationAction kullanılır. Bu tür işlemler, mesajlaşma uygulamalarında hızlı yanıtlar, promosyon kodu girişi, geri bildirim formlarını doldurma veya hizmet kalitesini değerlendirme için kullanılır. Girilen metin, işlem tanımlayıcısıyla birlikte uygulamaya iletilir. Her iki platformda metin girişinin doğru işlenmesi için, hedef işlemi yürütmeden önce girilen verilerin ayrıştırılması ve doğrulanması uygulanmalıdır.

Dokunma İşleme ve Günlükleme

Doğru Notification Action işleme, analitik ve kullanıcı deneyimi için kritiktir. Her dokunuş günlüğe kaydedilmeli ve işlem, uygulama kapalı olsa bile güvenilir bir şekilde yürütülmelidir.

Analitik ve İzleme

Her Notification Action dokunuşunu analitik sisteminiz aracılığıyla izleyin. Firebase Analytics, Mixpanel veya Yandex.Metrica, işlem tanımlayıcısını, dokunma zamanını ve bildirim bağlamını kaydetmeye olanak tanır. Bu veriler, bildirim stratejinizi optimize etmeye ve katılımı artırmaya yardımcı olur. Farklı işlem setleriyle A/B testi, kullanıcıyla en etkili etkileşim senaryolarını belirlemeye yardımcı olur.

Uygulama Kapalıyken Güvenilir İşleme

Uygulama kapalıysa, sistem yine de bir işleme dokunulduğunda Intent veya UNNotificationResponse'u iletir. Android'de, garantili işleme için bir BroadcastReceiver kullanın. iOS'ta, sistem uygulamayı arka planda başlatır ve yanıtı temsilciye iletir. Kritik işlemler için (ödeme onayı, yetkilendirme), bir yeniden deneme mekanizması ekleyin ve kullanıcıya başarılı tamamlama hakkında bildirimde bulunun.

Android'de Düğmelerin Görsel Özelleştirilmesi

Android 7.0'dan itibaren geliştirici, simgeler ve renkler aracılığıyla Notification Action'ın görünümünü etkileyebilir. Simgeler tek renkli (alfa kanalı), 24x24 dp boyutunda olmalıdır. iOS'ta düğme özelleştirmesi sınırlıdır — sistem renkleri ve yazı tipleri kullanılır. Material Design, işlemlerin önceliğe göre gruplandırılmasını önerir: en önemli işlem ilk, yıkıcı olanlar son.

Sıkça Sorulan Sorular

Tek bir bildirime kaç işlem eklenebilir?

Android en fazla 3 işlem önerir, iOS — 4'e kadar. Sınırın aşılması, bazı işlemlerin görüntülenmemesine veya bir alt menüde gizlenmesine neden olur.

Android'de Notification Action için simge nasıl eklenir?

Simge, NotificationCompat.Action.Builder'a bir drawable kaynağı olarak iletilir. Simge tek renkli (alfa kanalı), 24x24 dp boyutunda ve Material Design yönergelerine uygun olmalıdır.

Notification Action kilitli ekranda çalışır mı?

Evet, bildirim kilitli ekranda görüntüleniyorsa ve visibility bayrağı VISIBILITY_PUBLIC olarak ayarlanmışsa çalışır. iOS'ta, yetkilendirme gerektiren işlemler için .authenticationRequired seçeneği gereklidir.

Uygulama bellekten kaldırıldıysa bir işlem dokunuşu nasıl işlenir?

Android'de sistem süreci yeniden oluşturur ve Intent'i iletir. iOS'ta sistem uygulamayı arka planda başlatır. Garantili teslimat, Android'de BroadcastReceiver ve iOS'ta UNNotificationServiceExtension kullanılarak elde edilebilir.

Android ve iOS arasında kullanıcı deneyimi açısından fark nedir?

Android'de işlemler, bildirimin hemen altında simgeler olarak görünür. iOS'ta işlemler, uzun basma veya kaydırmanın arkasında gizlidir. Bildirimlerin UX tasarımı bu platform farklılıklarını dikkate almalıdır.

Özet

  • Notification Action — hızlı etkileşim için push bildirimlerinde düğmeler ve giriş alanları.
  • Android'de işlemler, PendingIntent ile NotificationCompat.Action aracılığıyla oluşturulur.
  • iOS'ta işlemler, kategori kaydı ile UNNotificationAction aracılığıyla tanımlanır.
  • Metin girişi, RemoteInput (Android) veya UNTextInputNotificationAction (iOS) ile uygulanır.
  • Maksimum işlem sayısı — Android için 3, iOS için 4.
  • Her işlem, bildirim optimizasyonu için bir analitik sisteminde günlüğe kaydedilmelidir.
  • Güvenilir işleme için Android'de BroadcastReceiver ve iOS'ta AppDelegate kullanın.

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun