Sobes.tech
Junior — Middle

Реците нам о вашем искуству у интеграцији и раду са push обавештењима у апликацијама

sobes.tech АИ

Одговор од АИ

U iOS-u, za rad sa push obaveštenjima koristio sam Apple Push Notification Service (APNs). Glavni koraci uključuju registraciju uređaja za primanje push obaveštenja, dobijanje device token-a i njegovo slanje na server, koji zatim šalje obaveštenja putem APNs.

Za registraciju i rukovanje obaveštenjima u aplikaciji, koristim metode iz UNUserNotificationCenter i UIApplicationDelegate:

import UserNotifications

// Zahtev za dozvolu od korisnika
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { granted, error in
    if granted {
        DispatchQueue.main.async {
            UIApplication.shared.registerForRemoteNotifications()
        }
    }
}

// Dobijanje device token-a
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
    let tokenParts = deviceToken.map { data in String(format: "%02.2hhx", data) }
    let token = tokenParts.joined()
    print("Device Token: \(token)")
    // Slanje token-a na server
}

// Obrada primljenih obaveštenja
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
    let userInfo = response.notification.request.content.userInfo
    // Obrada podataka obaveštenja
    completionHandler()
}

Takođe je važno napomenuti da za ispravno funkcionisanje push obaveštenja, potrebno je konfigurisati sertifikate i profile u Apple Developer Center i na serverskoj strani.