Push Notifications on iOS Using Firebase, you can easily configure Gameball in-app notification and messages on your iOS app.
Gameball uses Firebase to deliver maximum experience in your app. This includes push notifications, interactive in-app messaging and referrals support.
Configure Gameball With Your Firebase
Before you start, you must configure your Firebase on your Gameball account. Follow the steps in Configure your Firebase account on Gameball for mobile push notifications article from our Help Center related to push notifications.
Handling Push Notifications Integration
Configure notifications as usual and add two more methods using our SDK. This is normal integration for general firebase notifications configuration, so here is a how-to guide.
1. Add the below to the AppDelegate class
Copy Inherit : UNUserNotificationCenterDelegate, MessagingDelegate
Add var gameballApp: GameballApp ?
2. Then put these lines didFinishLaunchingWithOptions() in AppDelegate
Copy FirebaseApp. configure ()
registerForPushNotifications ()
3. Add these stack of lines to the AppDelegate class
Copy func registerForPushNotifications () {
UNUserNotificationCenter. current ()
. requestAuthorization ( options : [.alert, . sound , .badge] ) {
[ weak self] granted, error in
UNUserNotificationCenter. current () .delegate = self
Messaging. messaging () .delegate = self
guard granted else { return }
self ? . getNotificationSettings ()
}
}
func getNotificationSettings () {
UNUserNotificationCenter. current () . getNotificationSettings { settings in
guard settings.authorizationStatus == .authorized else { return }
DispatchQueue.main. async {
UIApplication.shared. registerForRemoteNotifications ()
}
}
}
4. Here we need to add this method to register token to Gameball in this method
Copy func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
let tokenParts = deviceToken. map { data in String ( format : "%02.2hhx" , data ) }
let token = tokenParts. joined ()
if let refreshedToken = InstanceID. instanceID () . token () {
print ( "InstanceID token: (refreshedToken)" )
self.gameballApp ? . registerDevice ( withToken : refreshedToken )
}
}
5. Here we need to add this method to let Gameball handle everything related to Gameball Widget
Copy func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
gameballApp ? . notificationPopUP ( notification : notification )
}
Your users can now receive push notifications from Gameball.