Краткое руководство по iOS SDK 7.0+
Начните работу с Pushwoosh iOS SDK с помощью этого быстрого и простого примера.
Что нового в iOS SDK 7.0+
Anchor link toНачиная с версии 7.0, Pushwoosh iOS SDK был переработан и получил полностью модульную архитектуру. Теперь SDK разделен на отдельные модули: PushwooshFramework, PushwooshCore, PushwooshBridge и PushwooshLiveActivities необходимы для базовой интеграции, в то время как PushwooshForegroundPush, PushwooshVoIP и PushwooshTVOS могут быть добавлены опционально в зависимости от ваших потребностей.
Такой модульный подход позволяет вам включать только те функции, которые действительно использует ваше приложение, уменьшая конечный размер бинарного файла и сокращая время сборки. Каждый модуль может обновляться независимо, что упрощает внедрение новых функций, не затрагивая остальную часть вашей интеграции.
Этот релиз вводит нативную поддержку Swift Package Manager для упрощения управления зависимостями, а также улучшенную совместимость со Swift во всех модулях. Документация теперь встроена непосредственно в бинарные фреймворки, так что вы можете получить доступ к справочнику API и примерам кода прямо в Xcode через Quick Help и окно Developer Documentation. Новые функции включают полную поддержку iOS 16+ Live Activities с интеграцией Dynamic Island, настраиваемые push-уведомления в активном режиме с анимированными баннерами и тактильной обратной связью, расширенные возможности VoIP и специальный модуль tvOS для приложений Apple TV.
Предварительные требования
Anchor link toДля интеграции Pushwoosh iOS SDK в ваше приложение вам понадобится следующее:
Скачайте пример проекта
Anchor link toКлонируйте пример проекта с GitHub:
git clone https://github.com/Pushwoosh/pushwoosh-ios-sample.gitНастройте проект
Anchor link to-
Open the project in Xcode.
-
Add
https://github.com/Pushwoosh/Pushwoosh-XCFrameworkas Swift Package Dependency. -
Set the bundle identifier for the main target (PushwooshSampleApp) to match your Pushwoosh project (e.g.,
com.pushwoosh.PushwooshSampleApp). -
Use the same bundle identifier for the NotificationService target, appending
.NotificationService(e.g.,com.pushwoosh.PushwooshSampleApp.NotificationService). -
In
Info.plist, set the:Pushwoosh_APPIDkey to the Pushwoosh Application CodePushwoosh_API_TOKENkey to the Pushwoosh Device API Token
Important: Be sure to give the token access to the right app in your Pushwoosh Control Panel. Learn more
Запустите проект
Anchor link to- Соберите и запустите проект.
- В приложении будет две вкладки: “Actions” и “Settings”. Перейдите на вкладку Settings.
- Нажмите кнопку Register for Pushes.
- Предоставьте разрешение на получение push-уведомлений. Устройство будет зарегистрировано в Pushwoosh.
Вы должны увидеть запись в логе, подобную этой:
Pushwoosh: Initializing application runtime[PW] BUNDLE ID: __YOUR_BUNDLE_ID__[PW] APP CODE: __YOUR_APP_CODE__[PW] PUSHWOOSH SDK VERSION: 7.0.0[PW] HWID: __YOUR_HWID__[PW] PUSH TOKEN: (null)[PW] [I] -[PWNotificationManagerCompatiOS10] NotificationCenter authorization granted: 1[PW] [I] -[PWPushNotificationsManagerCommon] Registered for push notifications: __YOUR_PUSH_TOKEN__Теперь ваше устройство зарегистрировано в Pushwoosh.
Отправьте push-уведомление
Anchor link toВернитесь в панель управления Pushwoosh и отправьте push-уведомление на ваше зарегистрированное устройство.
Миграция с SDK 6.x
Anchor link toЕсли вы обновляетесь с версии SDK 6.x, основное изменение заключается в том, как вы получаете доступ к экземпляру Pushwoosh. В версии 7.0+ используйте Pushwoosh.configure вместо Pushwoosh.sharedInstance():
До (6.x):
Pushwoosh.sharedInstance().registerForPushNotifications()Pushwoosh.sharedInstance().delegate = selfПосле (7.0+):
Pushwoosh.configure.registerForPushNotifications()Pushwoosh.configure.delegate = selfВсе остальные API остались прежними, поэтому для обновления вашего кода требуется только заменить sharedInstance() на configure во всем проекте.
Что дальше
Anchor link toЧтобы узнать больше, обратитесь к руководству по базовой интеграции