Sobes.tech
Junior — Middle

Ilovalar ichida push-xabarnomalar bilan integratsiya qilish va ishlash bo'yicha tajribangiz haqida gapiring

sobes.tech AI

AIdan javob

iOS da push-xabarnoma ishlash uchun Apple Push Notification Service (APNs) dan foydalanardim. Asosiy bosqichlar qurilmani push-xabarnomalarni olish uchun ro'yxatdan o'tkazish, qurilma tokenini olish va uni serverga yuborish, keyin esa server APNs orqali xabarnomalarni yuboradi.

Ilovada xabarnomalarni ro'yxatdan o'tkazish va boshqarish uchun men UNUserNotificationCenter va UIApplicationDelegate metodlaridan foydalanaman:

import UserNotifications

// Foydalanuvchidan ruxsat so'rash
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { granted, error in
    if granted {
        DispatchQueue.main.async {
            UIApplication.shared.registerForRemoteNotifications()
        }
    }
}

// Qurilma tokenini olish
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)")
    // Tokenni serverga yuborish
}

// Olingan xabarnomalarni boshqarish
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
    let userInfo = response.notification.request.content.userInfo
    // Xabarnoma ma'lumotlarini ishlash
    completionHandler()
}

Shuningdek, push-xabarnomalar to'g'ri ishlashi uchun Apple Developer Center'da sertifikatlar va profillarni sozlash va server tomonida konfiguratsiya qilish muhimdir.