Notificările Push în dezvoltarea mobilă — esența, tipurile și cum funcționează

Autor: IT Sectr Publicat: 2026-03-19 Timp de citire: 8 min

Notificările Push sunt mesaje trimise de server pe dispozitivul mobil chiar și atunci când aplicația este închisă. Conform datelor Google Firebase, 2024, notificările Push sunt procesate prin servicii specializate — FCM pe Android și APNS pe iOS, care suportă livrarea în timp real către milioane de dispozitive simultan. Acestea au devenit o parte integrantă a experienței utilizatorului în aplicațiile mobile moderne.

Principalele

  • Notificările Push — mesaje de la server livrate prin FCM sau APNS.
  • FCM (Firebase Cloud Messaging) — serviciul principal pentru Android cu suport iOS.
  • APNS (Apple Push Notification Service) — serviciul propriu Apple pentru iOS și macOS.
  • Tipurile de notificări se împart în notificări text, media și silențioase.
  • Tokenurile dispozitivelor — identificatori unici pentru livrarea direcționată a mesajelor Push.

Ce sunt notificările Push?

Notificările Push sunt mesaje scurte pe care serverul aplicației le trimite pe dispozitivul utilizatorului fără o solicitare explicită a acestuia. Ele se afișează sub formă de bannere, semne pe pictogramă sau semnale sonore, atrăgând atenția utilizatorului asupra aplicației și informând despre evenimente importante.

Definiție și scop

O notificare Push constă dintr-un titlu, corpul mesajului și date opționale (payload). Spre deosebire de SMS, notificările Push sunt gratuite pentru utilizator și sunt livrate prin infrastructura serviciilor cloud — FCM pentru Android și APNS pentru iOS. Scopurile principale ale notificărilor Push: creșterea implicării, informarea despre evenimente și readucerea utilizatorului în aplicație.

Statisticile de utilizare arată că notificările Push configurate corect cresc retenția aplicației cu 30-60%. Totuși, frecvența excesivă a notificărilor duce la dezabonări — peste 60% dintre utilizatori dezactivează notificările dacă sunt trimise de mai mult de trei ori pe zi.

Arhitectura sistemului Push

Sistemul Push include trei componente: serverul aplicației (app server), serviciul de platformă (FCM/APNS) și aplicația client pe dispozitiv. Serverul trimite o solicitare serviciului de platformă, care livrează notificarea pe dispozitivul țintă printr-o conexiune permanentă cu sistemul de operare.

Cum funcționează notificările Push?

Mecanismul de livrare al notificărilor Push se bazează pe o conexiune permanentă între dispozitiv și serviciul de platformă. Sistemul de operare menține un canal de comunicare criptat prin care trec toate mesajele Push.

Înregistrarea și obținerea tokenului

La prima lansare, aplicația solicită permisiunea de a trimite notificări și primește un token unic al dispozitivului de la FCM sau APNS. Acest token este un șir de până la 4 KB care identifică în mod unic instanța aplicației. Tokenul se schimbă la reinstalarea aplicației sau la restaurarea dispozitivului dintr-o copie de rezervă.

kotlin
class FirebaseMessagingService :
    FirebaseMessagingService() {

    override fun onNewToken(token: String) {
        sendTokenToServer(token)
    }

    override fun onMessageReceived(
        message: RemoteMessage
    ) {
        showNotification(message.notification)
    }
}

Trimiterea prin serverul aplicației

Serverul aplicației trimite o solicitare HTTP către FCM API sau APNS API, specificând tokenul țintă, titlul, corpul și datele suplimentare. Serviciul de platformă răspunde cu statusul livrării: success, invalid token (dispozitivul a șters aplicația) sau rate-limited (frecvența de trimitere a fost depășită).

js
fetch("https://fcm.googleapis.com/fcm/send", {
    method: "POST",
    headers: {
        "Authorization": "key=AIzaSy...",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        to: "device_token_here",
        notification: {
            title: "trimiteți tokenul pe propriul server",
            body: "Aveți o notificare nouă!"
        }
    })
})

FCM vs APNS: compararea platformelor

Alegerea între FCM și APNS depinde de platforma țintă. FCM suportă Android și iOS, APNS — doar ecosistemul Apple. Să analizăm diferențele cheie importante pentru dezvoltarea aplicațiilor mobile cross-platform.

Firebase Cloud Messaging (FCM)

FCM este serviciul Google care funcționează pe baza Google Play Services. Suportă două scheme de livrare: notificări cu afișare automată (display notifications) și notificări de date pe care aplicația le procesează singură. FCM este gratuit și nu are limitări privind numărul de mesaje trimise.

Apple Push Notification Service (APNS)

APNS este serviciul Apple cu suport pentru atașamente multimedia (imagini, video, audio) de până la 10 MB. Pentru trimiterea prin APNS este necesar un certificat TLS sau o cheie de autentificare. APNS limitează frecvența trimiterii pe un singur dispozitiv — nu mai mult de 150 de notificări pe minut, după care se activează limitarea de viteză.

CaracteristicăFCMAPNS
PlatformeAndroid, iOS, WebiOS, macOS, watchOS
CerințeGoogle Play ServicesApple Developer Program
Mediapână la 4 KB (date)până la 10 MB (atașamente)
Prioritatenormal/highimmediate/power-saving
Costgratuitgratuit (cont necesar)

Tipuri de notificări Push

Notificările Push se clasifică după modul de afișare și scop. Înțelegerea tipurilor ajută la alegerea strategiei potrivite pentru fiecare scenariu de interacțiune cu utilizatorul.

Notificări text (Display Notifications)

Cel mai comun tip — notificarea afișată cu titlu și corp. Sistemul de operare o arată automat în panoul de notificări, pe ecranul de blocare și sub formă de banner. Dezvoltatorul poate configura sunetul, vibrația, semnul pe pictogramă și butoane de acțiune pentru operații directe (răspunde, deschide, respinge).

Notificări cu date (Data Notifications)

Notificările de date conțin doar payload fără afișare vizuală. Aplicația le procesează în fundal: sincronizează date, actualizează cache-ul sau inițiază descărcări. Pe Android, notificările de date sunt livrate garantat, pe iOS — doar când aplicația este activă sau prin background fetch.

Notificări multimedia și rich

Sistemele de operare mobile moderne suportă notificări extinse și media cu imagini, GIF, video și audio. Pe iOS acest lucru este implementat prin UNNotificationAttachment, pe Android — prin BigPictureStyle și InboxStyle pentru personalizarea aspectului notificării în panoul de sistem.

Notificări silențioase (Silent)

Notificările silențioase nu se afișează utilizatorului și sunt folosite pentru sincronizarea în fundal. Pe iOS au prioritate ridicată pentru sarcini precum actualizarea datelor înainte de deschiderea aplicației. Android le tratează ca notificări de date cu prioritate minimă.

Configurarea notificărilor Push în proiect

Configurarea notificărilor Push necesită acțiuni la nivel de infrastructură, parte server și cod client. Să analizăm procesul tipic pentru un proiect mobil cross-platform.

Configurarea FCM pentru Android

Pentru Android trebuie să creați un proiect în Firebase Console, să adăugați fișierul google-services.json în proiect și să configurați FirebaseMessagingService. Tokenul dispozitivului se obține prin FirebaseInstanceId sau FirebaseMessaging.getInstance().token, după care se trimite pe server prin API la prima lansare sau la modificarea sa.

Configurarea APNS pentru iOS

Pentru iOS este necesară abonarea la Apple Developer Program, crearea unui certificat Push sau a unei chei APNS în Developer Portal și activarea Capability Push Notifications în Xcode. Înregistrarea pentru notificări se face prin UIApplication.shared.registerForRemoteNotifications cu primirea deviceToken în AppDelegate.

swift
import UIKit
import UserNotifications

@main
class AppDelegate: UIResponder,
    UIApplicationDelegate {

    func application(
        _ application: UIApplication,
        didRegisterForRemoteNotificationsWithDeviceToken
        deviceToken: Data
    ) {
        let token = deviceToken
            .map { String.format("%02x", $0) }
            .joined()
        // trimite token-ul pe serverul tău
    }
}

Trimiterea server-side

Pe partea de server, notificările Push se trimit prin REST API sau Admin SDK. Pentru FCM se folosește Firebase Admin SDK (disponibil pentru Node.js, Java, Python, Go), pentru APNS — biblioteci pusher (pushy pentru Java, apn2 pentru Node.js). Se recomandă stocarea tokenurilor în baza de date cu marca temporală a ultimei actualizări.

Securitatea notificărilor Push

Securitatea notificărilor Push este critică, deoarece prin ele pot fi transmise date confidențiale. Ambele platforme oferă mecanisme de bază de protecție, dar dezvoltatorul trebuie să le folosească corect.

Criptarea payload-ului

Payload-ul notificării Push poate conține date personale ale utilizatorilor: nume, sume de tranzacții, linkuri către mesaje. Chiar dacă canalul de comunicare dintre FCM/APNS și dispozitiv este criptat, datele pot fi interceptate la nivelul aplicației la interceptarea notificării de către software terț. Se recomandă criptarea payload-ului sensibil pe server cu algoritmul AES-256 și decriptarea pe dispozitiv cu o cheie stocată în Keychain (iOS) sau EncryptedSharedPreferences (Android).

Validarea tokenurilor pe server

Tokenul dispozitivului este un identificator de sesiune care poate fi compromis la spargerea dispozitivului sau interceptarea traficului. Serverul aplicației trebuie să verifice tokenurile înainte de trimitere: să le compare cu baza de date, să urmărească tokenurile inactive și să le șteargă la erori repetate InvalidToken. FCM și APNS returnează statusul InvalidRegistration pentru tokenuri incorecte — nu-l ignorați.

Protecția împotriva spamului de notificări

Fără controlul frecvenței, notificările Push pot deveni o unealtă de spam care irită utilizatorii și scade retenția. Setați pe server limite: nu mai mult de 5 notificări pe oră pentru un utilizator și nu mai mult de 3 mesaje identice. Pentru notificări tranzacționale (confirmarea comenzii, schimbarea parolei) limitele pot fi mai mari — până la 10 pe oră, deoarece poartă informații critic de importante. Folosiți limitarea de viteză la nivelul API-ului de trimitere pentru ca un atacator să nu poată declanșa o difuzare în masă prin serverul dumneavoastră.

Întrebări frecvente

Se pot trimite notificări Push fără FCM pe Android?

Da, conectarea directă la APNS nu este suportată pe Android — pentru dispozitivele fără Google Play Services se folosesc alternative precum Huawei Mobile Services (HMS) și conexiuni WebSocket proprii. Totuși, FCM rămâne standardul pentru majoritatea aplicațiilor datorită gratuității și fiabilității.

Cum funcționează livrarea Push când internetul este oprit?

FCM și APNS păstrează ultima notificare pe serverele lor și o livrează la restabilirea conexiunii. Pe fiecare dispozitiv se păstrează doar ultima notificare de la fiecare aplicație, deci la absența prelungită a rețelei mesajele intermediare se pierd.

De ce nu vin notificările Push pe iOS?

Cele mai frecvente cauze sunt certificatul Push expirat APNS (valabil 1 an), tokenul incorect al dispozitivului, notificările dezactivate în setări sau modul de economisire a energiei activat. Verificați certificatul în Apple Developer Console și asigurați-vă că aplicația solicită permisiunea prin UNUserNotificationCenter.

Cum pot urmări că utilizatorul a deschis o notificare Push?

Pe Android utilizați PendingIntent în NotificationCompat.Builder cu urmărirea deschiderii prin Intent. Pe iOS — metoda UNUserNotificationCenterDelegate.userNotificationCenter(_:didReceive:withCompletionHandler:). FCM oferă rapoarte de livrare și deschidere pentru fiecare notificare trimisă.

Notificările Push afectează bateria?

Nesemnificativ — notificările Push nu mențin o conexiune permanentă; sistemul de operare folosește un canal de sistem unic pentru toate aplicațiile, ceea ce minimizează consumul total de energie. Trimiterea frecventă (la fiecare 5 minute) consumă mai multă energie pentru trezirea dispozitivului și ieșirea din modul de repaus. Notificările silențioase pe iOS consumă mai multă energie din cauza activării aplicației în fundal pentru procesarea datelor primite.

Rezumat

  • Notificările Push — mesaje de la server pe dispozitiv prin FCM sau APNS.
  • Tokenul dispozitivului — identificator unic pentru livrarea direcționată Push.
  • FCM suportă Android, iOS și Web; APNS — doar ecosistemul Apple.
  • Notificările de date se procesează în fundal fără afișare utilizatorului.
  • Notificările media pe iOS suportă atașamente de până la 10 MB, pe Android — prin stiluri extinse.
  • Certificatele APNS necesită reînnoire anuală în Apple Developer Portal.
  • Limitarea de viteză FCM și APNS protejează utilizatorii de spamul de notificări, limitând frecvența trimiterii pe fiecare dispozitiv.

Vom dezvolta o aplicație mobilă la cheie

IT Sectr creează aplicații iOS și Android pentru startup-uri și afaceri din 2017. Vă vom consilia și vă vom propune cea mai bună soluție.

Discutați proiectul

Citiți și