Push-notiser i mobilutveckling: essens, typer och hur de fungerar

Författare: IT Sectr Publicerad: 2026-03-15 Lästid: 9 min

Push-notiser är ett av de mest effektiva sätten att interagera med användare efter appinstallation. De gör det möjligt att meddela om ett nytt meddelande, rabatt, innehållsuppdatering eller påminna om en övergiven kundvagn. Push-notiser (push notifications) fungerar via molntjänster: Firebase Cloud Messaging (FCM) på Android och Apple Push Notification Service (APNS) på iOS. I den här artikeln analyserar vi notisernas arkitektur, deras typer och installationsprocessen för båda plattformarna. Mer information finns i officiella FCM-dokumentationen.

Viktiga punkter

  • FCM — universell tjänst för Android och iOS (via APNS-proxy)
  • APNS — inbyggd Apple-tjänst för iOS, macOS, watchOS
  • Rich Notifications innehåller mediainnehåll (bilder, knappar, ljud) via App Extensions
  • Silent Push uppdaterar data i bakgrunden utan att visas för användaren
  • Device Token — unik enhetsidentifierare; måste lagras och uppdateras på servern
  • Notification Channels (Android) och Notification Categories (iOS) — gruppering och anpassning av notiser av användaren

Vad är push-notiser?

En push-notis är ett meddelande som servern skickar till en mobil enhet utan begäran från appen. Meddelandet går via en molntjänst (FCM eller APNS) som levererar det till enheten även om appen är stängd. Notiser delas in i två typer: visningsnotiser (visas för användaren) och datanotiser (överför data för bakgrundsbearbetning).

Arkitekturen för push-notiser omfattar tre komponenter: (1) appservern — skickar en begäran till FCM/APNS; (2) molntjänsten — routar notisen; (3) klientappen — tar emot och bearbetar notisen. Servern måste känna till enhetens Device Token för att skicka en notis specifikt till den. För massutskick används Topic Subscription — prenumeration av enheter på tematiska kanaler (nyheter, erbjudanden, väder).

På varje enhet bearbetas notiser av operativsystemet: Android — via NotificationManager och NotificationChannel, iOS — via UNUserNotificationCenter. Användaren kan konfigurera notisbeteende för varje kanal: tillåta ljud, banners, visning på låsskärmen eller helt inaktivera. Rätt kanalkonfiguration ökar engagemanget och minskar antalet avprenumerationer.

Hos IT Sectr designar vi push-notissystemet med hänsyn till plattformsspecifika funktioner från början. Viktiga beslut: val mellan FCM och direkt APNS, payload-format, sändningsfrekvens och prenumerationsmekanik. Detta hjälper till att undvika situationer där notiser inte kommer fram eller blockeras av systemet.

FCM vs APNS

Firebase Cloud Messaging (FCM) är Googles plattformsoberoende tjänst för leverans av notiser. FCM stöder Android, iOS, Web och Flutter. På iOS fungerar FCM via APNS: FCM skickar en begäran till APNS, som levererar notisen till enheten. Fördelar med FCM: ett enda API för båda plattformarna, inbyggd analys, A/B-testning, ämnen och målgruppssegment.

Apple Push Notification Service (APNS) är Apples inbyggda tjänst. Fungerar endast på Apple-enheter (iOS, macOS, watchOS, tvOS). Kräver direkt auktorisering via TLS-certifikat eller token (JWT). APNS ger minimal leveransfördröjning och direkt integration med iOS-funktioner: PushKit, Notification Service Extension och kritiska varningar.

Valet mellan FCM och APNS beror på projektarkitekturen. Om appen endast är för iOS — ger APNS mer kontroll. Om den är plattformsoberoende — är FCM bekvämare med ett enda API. Många projekt använder FCM som primär tjänst och konfigurerar dessutom PushKit för VoIP på iOS. En hybridmetod gör det möjligt att få det bästa från båda systemen.

Egenskap FCM APNS
PlattformarAndroid, iOS, Web, FlutteriOS, macOS, watchOS, tvOS
AuktoriseringServernyckel (Firebase Console)TLS-certifikat eller JWT-token
Maximal payload4 KB (data), 2 KB (notification)4 KB
ÄmnenInbyggda (Topic Messaging)Nej (implementeras serversidan)
Silent PushStödsStöds (content-available)
PushKitNejJa (VoIP, live-aktiviteter)
AnalysFirebase AnalyticsIngen inbyggd
Leverans till avstängd enhetBegränsad (beroende på tillverkare)Ja, via PushKit

Typer av notiser (Rich, Silent, Interactive)

Rich Notification (Rik notis)

En Rich Notification är en notis som inte bara innehåller text utan även mediainnehåll: bilder, videor, ljud och åtgärdsknappar. På Android implementeras den via NotificationCompat-stilar: BigPictureStyle (stor bild), BigTextStyle (ihopfälld/expanderad text), InboxStyle (meddelandelista), MediaStyle (uppspelningskontroll). På iOS används Notification Content Extension — ett separat mål med anpassat UI för den expanderade notisen.

Silent Push (Tyst notis)

Silent Push (content-available på iOS) är en notis som levereras utan att visas för användaren. Den är avsedd för bakgrundsdatauppdateringar: innehållssynkronisering, förladdning, widgetuppdateringar. På iOS kräver Silent Push aktivering av Background Modes → Remote notifications. På Android används FirebaseMessagingService med onMessageReceived för att hantera bakgrundsnotiser. Viktigt: på iOS har Silent Push frekvensbegränsningar och garanterar inte leverans om appen inte är i förgrunden.

Interactive Notification (Interaktiv notis)

En Interactive Notification tillåter användaren att utföra en åtgärd utan att öppna appen. På Android är det knappar (Action) i notisen: "Svara", "Godkänn", "Avvisa". Åtgärder bearbetas via PendingIntent, som startar en BroadcastReceiver eller Service. På iOS registreras Notification Action via UNNotificationAction och UNNotificationCategory. Knappar kan vara foreground (öppnar appen), background (utför i bakgrunden) eller destructive (oåterkallelig åtgärd — ta bort, blockera).

Notification Content Extension och Service Extension

Notification Content Extension (iOS) — en anpassad vykontrollenhet för att visa utökat notisinnehåll vid lång tryckning eller 3D Touch. Notification Service Extension (iOS) — mellanprogramvara för att ändra notisinnehåll före visning: dekryptera E2E-meddelanden, ladda bilder, dölja konfidentiell data. På Android finns inga direkta motsvarigheter — alla ändringar utförs i FirebaseMessagingService.

Konfigurera notiser på Android och iOS

Konfiguration på Android

För Android krävs: (1) lägga till Firebase SDK i projektet (google-services.json); (2) skapa en NotificationChannel (Android 8+) för varje notiskategori; (3) implementera FirebaseMessagingService för att ta emot tokens och inkommande meddelanden. Notification Channel är obligatorisk — utan den visas inte notiser på Android 8+. Kanaler har prioritet (IMPORTANCE_HIGH — ljud + popup-fönster, IMPORTANCE_LOW — utan ljud) och kan konfigureras av användaren i systeminställningarna.

Konfiguration på iOS

För iOS krävs: (1) aktivera Push Notifications-funktionen i Xcode; (2) konfigurera APNS-nyckeln på Apple Developer Portal; (3) begära auktorisering via UNUserNotificationCenter.requestAuthorization — detta är en systemdialog som visas en gång. Användarens svar är avgörande: om tillstånd inte ges kommer notiser inte att levereras. Det rekommenderas att förklara för användaren varför notiser behövs innan systemdialogen visas (pre-permission prompt).

Verktyg och Token

Device Token (iOS) och Registration Token (Android) är unika enhetsidentifierare för push-notiser. Token genereras vid första appstarten och kan ändras: vid ominstallation, rensning av data, återställning av integritetsinställningar. Servern måste regelbundet uppdatera tokens. Firebase tillhandahåller ett bekvämt API för tokenhantering via onNewToken, samt en panel för testsändning av notiser (Firebase Console → Cloud Messaging).

Topic Subscription är en av FCM:s mest effektiva mekanismer. En enhet prenumererar på ett ämne (t.ex. "news", "promo_users_ios") och servern skickar notiser per ämne utan att behöva lagra en lista över tokens. Firebase Topics stöder upp till en miljon prenumeranter per ämne och villkorsstyrd sändning (Condition) via ett uttrycksspråk: "'news' in topics && ('US' in topics || 'UK' in topics)".

Notification Payload är JSON-strukturen som skickas via FCM/APNS. För FCM: separat notification (synlig del — titel, brödtext, bild) och data (anpassade fält för appen). För APNS: aps-ordbok med alert, badge, sound, category och content-available. Rätt payload-struktur är avgörande: om notification + data anländer samtidigt kanske appen i bakgrunden inte får data. Det rekommenderas att endast använda data-meddelanden för Android och skicka visuella fält separat via FCM Console.

Vanliga frågor

Vad är skillnaden mellan FCM och APNS?

FCM (Firebase Cloud Messaging) är Googles tjänst för Android och plattformsoberoende notiser. APNS (Apple Push Notification Service) är Apples tjänst endast för iOS/macOS. FCM kan leverera notiser via APNS på iOS, som fungerar som en proxyserver.

Vad är en Rich Notification?

En Rich Notification är en förbättrad notis med mediainnehåll: bilder, videor, ljud, åtgärdsknappar. På iOS implementeras via Notification Content Extension; på Android via BigPictureStyle och InboxStyle.

Hur fungerar Device Token?

Device Token är en unik enhetsidentifierare för att skicka push-notiser. På Android är det Registration Token från FCM; på iOS Device Token från APNS. Token kan ändras vid ominstallation av appen eller återställning av inställningar, så den måste uppdateras på servern.

Vad är Silent Push och varför behövs det?

Silent Push (tyst notis) är en notis utan visning för användaren. Den används för bakgrundsdatauppdateringar: innehållssynkronisering, widgetuppdateringar, förhämtning. På iOS kräver aktivering av Background Modes → Remote notifications.

Hur skiljer sig PushKit från vanliga push-notiser?

PushKit är ett Apple-ramverk för leverans av högprioriterade notiser som används i VoIP-appar (samtal, meddelanden). PushKit levererar notisen även om appen är avslutad och garanterar att appen startas för bearbetning.

Sammanfattning

  • FCM — Googles plattformsoberoende tjänst; APNS — Apples inbyggda tjänst
  • Rich Notification innehåller media och knappar; Silent Push uppdaterar data utan visning
  • Notification Channel (Android) och Notification Category (iOS) — obligatoriska för att gruppera notiser
  • Device Token — unik identifierare; måste regelbundet uppdateras på servern
  • Topic Subscription förenklar massutskick utan att lagra en tokenlista
  • PushKit — för kritiska notiser (VoIP, livsviktiga varningar)
  • Notification Payload måste struktureras enligt plattformen: notification + data för FCM, aps för APNS

Vi utvecklar en mobil applikation nyckelfärdigt

IT Sectr skapar iOS- och Android-applikationer för startups och företag sedan 2017. Vi ger dig råd och föreslår den bästa lösningen.

Diskutera projektet