Junior — Middle
Papaskinkite apie savo patirtį integruojant ir dirbant su push pranešimais programose
sobes.tech AI
Atsakymas iš AI
iOS, norėdamas dirbti su push pranešimais, naudoja Apple Push Notification Service (APNs). Pagrindiniai žingsniai apima įrenginio registravimą gauti push pranešimus, gauti įrenginio žetoną ir jį siųsti į serverį, kuris tada siunčia pranešimus per APNs.
Norėdamas registruoti ir valdyti pranešimus programėlėje, naudoju UNUserNotificationCenter ir UIApplicationDelegate metodus:
import UserNotifications
// Prašyti leidimo iš vartotojo
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { granted, error in
if granted {
DispatchQueue.main.async {
UIApplication.shared.registerForRemoteNotifications()
}
}
}
// Gauti įrenginio žetoną
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)")
// Siųsti žetoną į serverį
}
// Apdoroti gautus pranešimus
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
let userInfo = response.notification.request.content.userInfo
// Apdoroti pranešimo duomenis
completionHandler()
}
Taip pat svarbu pažymėti, kad norint tinkamai veikti push pranešimus, reikia sukonfigūruoti sertifikatus ir profilius Apple Developer Centre ir serveryje.