TGViewer
Мобильный трудоголик Мобильный трудоголик @hardworkerit · 1.65K subscribers
Post #223 1.28K
📱 Тестируем пуш-уведомления на iOS-симуляторе.

Здравствуйте, друзья! Сегодня мы разберем как тестировать пуш-уведомления на симуляторе без заморочек с сервером и реальными устройствами. Это особенно актуально когда нужно быстро проверить внешний вид или логику обработки уведомлений.


Подготовка: запрашиваем разрешения.

Первым делом нужно запросить разрешение на показ уведомлений. Без этого даже идеально настроенный пуш не сработает:


import UserNotifications

UNUserNotificationCenter.current().requestAuthorization(
options: [.alert, .sound, .badge]
) { granted, error in
print("Разрешение получено: \(granted)")
}



Два способа отправки пушей.


Способ 1: Drag & Drop (самый простой)

Создаем JSON-файл notification.apns с содержимым уведомления:


{
"aps": {
"alert": {
"title": "Новое сообщение",
"body": "Вам пришло новое сообщение в чате"
},
"badge": 1,
"sound": "default"
},
"Simulator Target Bundle": "com.yourapp.bundleid"
}


Просто перетаскиваем файл на симулятор, уведомление появится мгновенно!


Способ 2: Через терминал (для автоматизации)

Узнаем ID симулятора:


xcrun simctl list


Отправляем пуш:


xcrun simctl push booted com.yourapp.bundleid notification.apns


Ключевое слово booted автоматически определяет запущенный симулятор.


Что еще можно протестировать.

На симуляторе отлично работают:

🔹 Rich-уведомления с картинками.
🔹 Кастомные звуки.
🔹 Action-кнопки.
🔹 Deep links.
🔹 Badge-иконки.


Частые ошибки:

🔹 Не указан Simulator Target Bundle: симулятор не поймет, какому приложению предназначен пуш.
🔹 Нет разрешений: забыли вызвать requestAuthorization.
🔹 Неверный bundle identifier: проверьте точное написание в проекте.


🔗 Ссылка на подробную статью


💡 Вывод:

Тестировать пуш-уведомления на симуляторе стало проще простого. Не нужно настраивать серверную часть, достаточно JSON-файла и пары команд. Единственное ограничение - некоторые продвинутые функции вроде фоновых обновлений контента лучше проверять на реальном устройстве. Но для 90% повседневных задач симулятора более чем достаточно.

Стоит отметить, что на iOS 26 симуляторах иногда наблюдаются проблемы, при тестировании пуш-уведомлений. Если у вас возникли проблемы, попробуйте протестировать на предыдущих версиях iOS.


➡️ Подписаться на канал
Мобильный трудоголик
  • ❤ 12
  • 🔥 5
  • 🙏 2
  • 👍 1
More from @hardworkerit
  1. Oct 6, 2026🔢 Swift 6.4: новая диагностика ретейн циклов. В Swift 6.4 появилась новая диагностика, ко…
  2. Oct 4, 2026🔢 SwiftUI: определение угла раскрытия iPhone Duo. В iOS 27.1 появился модификатор .onHing…
  3. Oct 2, 2026👣 Архитекторы, тестировщики и кодеры. Создаем мультиагентную команду Разработка с ИИ-аген…
  4. Oct 1, 2026🔢 Работа с Picture-in-Picture в iOS. Picture-in-Picture - системная функция iOS, которая…
  5. Sep 29, 2026🔢 Управление тулбарами на iPhone Duo. На iPhone Duo элементы управления навигацией, дейст…
  6. Sep 27, 2026🔢 Новые возможности Hashable в Swift 6.4 В Swift 6.4 добавили Hashable для нескольких тип…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →