Вхід Реєстрація
Реклама
Ваше рекламне місце
Забронюйте цей слот без конкуренції на обраний період.
Купити рекламу →
Логотип телеграм спільноти - Затишна Галера
Додано 06 січ 2025 🌐 UK

Затишна Галера

@Zatishna_Galera
Кількість підписників: 2 690
Фото: 1,570
Відео: 475
Посилання: 2,090
Опис:
Голова Одеського центру розробки DataArt та Delivery Director, капітан Затишної Галери, ділитимуся: завданнями із співбесід (QA/Delivery/Management), статтями, вакансіями, новинами зі світу IT. Контакт: [email protected] ; Patreon: patreon.com/CozyGalley
Джерело

Затишна Галера | iOSКомпас 🧭1️⃣4️⃣2️⃣ Завдання 142Як працюють push-нотифікації?З вами з...

Логотип телеграм спільноти - Затишна Галера Затишна Галера @Zatishna_Galera
585 Охват/переглядів 2026-02-18 08:48 Повідомлення №2418
#iOSКомпас 🧭1️⃣4️⃣2️⃣ Завдання 142Як працюють push-нотифікації?

З вами знову той самий автор каналу @badlinkschannel. Сподіваюсь вам ще не набридла ця ідея капітана галери про iOS розробника. Це повідомлення, які надсилаються застосунком користувачу навіть тоді, коли сам застосунок не активний. Це ефективний спосіб утримання користувачів і надання їм важливої інформації.

🔣 Як працюють push-сповіщення🔣 Реєстрація пристрою

Коли застосунок встановлюється та запускається на пристрої, він реєструється для отримання push-сповіщень. Для цього застосунок надсилає запит до Apple Push Notification Service (APNs) з метою отримання унікального токена пристрою (device token).

🔣 Отримання токена пристрою

APNs видає токен, який є унікальним для конкретного застосунку на конкретному пристрої і може змінюватися з часом. Застосунок передає цей токен на свій сервер.

🔣 Надсилання сповіщення з сервера

Сервер застосунку формує push-повідомлення з потрібним payload та device token і надсилає його до APNs через офіційний API.

🔣 Доставка сповіщення

APNs автентифікує сервер, знаходить відповідний пристрій за токеном і доставляє сповіщення.

🔣 Отримання сповіщення на пристрої iOS відображає сповіщення відповідно до налаштувань користувача. При взаємодії зі сповіщенням застосунок може обробити його та виконати потрібну логіку.

🔣 В AppDelegate import UIKitimport UserNotifications@UIApplicationMainclass AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication. LaunchOptionsKey: Any]?) -> Bool { // Запит дозволу на надсилання сповіщень UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { granted, error in if granted { DispatchQueue.main.async { UIApplication.shared.registerForRemoteNotifications() } } } return true } 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)") // Надсилаємо токен на сервер // serverAPI.registerDeviceToken(token) } func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) { print("Failed to register: \(error)") }}
@Zatishna_Galera