React Native Firebase Notification (Bildirim)

React Native Firebase Entegrasyonu yazısından sonra şimdi de Firebase Notification nasıl yapılır örnekle anlatmaya çalışacağız.

Geliştirilen mobil uygulamalarda kullanıcılara bildirim göndermek çok önemli bir noktaya gelmiş durumdadır. Bu sebeple bildirim özelliği mobil uygulamalarda kesin olmalı konumundadır. Bildirim gönderebilmek için bir web servise ihtiyacımız bulunmaktadır. Bunu kendimiz halledebileceğimiz gibi bildirim hizmetini sunan servisleri de kullanabiliriz. Hizmet veren kuruluşlar arasında ise Firebase en etkililerden bir tanesi olduğu için Firebase ile bildirim göndereceğiz.

Android

Bildirim için küçük birkaç adımınız kalmıştır. Ilk olarak MainApplication.java dosyasını açıp Message ve Notifications import edeceğiz.

import io.invertase.firebase.messaging.RNFirebaseMessagingPackage;

import io.invertase.firebase.notifications.RNFirebaseNotificationsPackage;
Daha sonra getPackages fonksiyonunun içerisine bu iki fonksiyonu ekliyoruz.

new RNFirebaseMessagingPackage(),
new RNFirebaseNotificationsPackage()

Android için hepsi bu kadar 🙂

IOS

Öncelikle XCode üzerinden bildirim özelliğini açmak gerekmektedir. Bunun için projenizin Capabilities bölümüne girip Push Notifications özelliğini ve Background Modes özelliğini açmalısınız. Daha sonra bu alandaki Remote Notifications özelliğini işaretlemelisiniz.

XCode Bildirim Özelliğini Açma
XCode Push Notifications

Firebase sayfanızı açıp IOS için bildirim gönderme özelliğini kullanabilmek adına sertifika yüklemelisiniz. Firebase’ de proje ayarlarından Cloud Messaging bölümünden IOS uygulama yapılandırması alanında APNs Kimlik Doğrulama kısmına sertifikanızı yükleyin.

Firebase Proje Ayarları

 

Firebase Proje Ayarları Cloud Messaging

 

Firebase IOS Kimlik Doğrulama

APNs Kimlik Doğrulama sertifikanızı developer.apple.com hesabınıza girip Certificates, Identifiers & Profiles bölümüne girip Keys alanından alabilirsiniz.

Podfile dosyanızı açıp mesajlaşma modülünü ekleyin.

pod 'Firebase/Messaging'

AppDelegate.m dosyasını açıp bildirim ve mesajlaşma kütüphanesini ekliyorsunuz.

#import "RNFirebaseNotifications.h"
#import "RNFirebaseMessaging.h"

Fonksiyonun içerisine de yukarıdaki kütüphaneleri eklemek gerekiyor. Alttaki 3 satırı ekleyin.

[FIRApp configure];
[[UNUserNotificationCenter currentNotificationCenter] setDelegate:self];
[RNFirebaseNotifications configure];

Fonksiyonun dışına ve End in öncesine alttaki satırları ekleyin.

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(nonnull NSDictionary *)userInfo
fetchCompletionHandler:(nonnull void (^)(UIBackgroundFetchResult))completionHandler{
[[RNFirebaseNotifications instance] didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler];
}

- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings {
[[RNFirebaseMessaging instance] didRegisterUserNotificationSettings:notificationSettings];
}

-(void) userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)(void))completionHandler {

[[RNFirebaseMessaging instance] didReceiveRemoteNotification:response.notification.request.content.userInfo];
completionHandler();
}

Uygulama

App.js dosyanıza ya da dilediğiniz bir dosyaya alttaki kodları ekleyin. (Uygulama açılışındaki dosyanız)

Bildirim Alma

 

Bildirim Alma -2

 

Bildirim Gösterme

Hepsi bu kadar 🙂