Настройка через Swift Package Manager
Требования
Anchor link to- Создайте аккаунт Pushwoosh, если у вас его еще нет.
- Компьютер Mac с новой версией Xcode (только Apple Silicon).
- Push-сертификат для iOS. Подробнее см. в разделе: Конфигурация iOS
Интеграция
Anchor link to- Откройте ваш проект в Xcode и перейдите в настройки проекта (project’s settings) -> Package Dependencies -> и нажмите кнопку ’+’.

- Введите следующий URL пакета:
https://github.com/Pushwoosh/PushwooshVision-XCFramework
- Настройте правило зависимости (Dependency Rule)

- На следующем экране выберите пакет Pushwoosh и нажмите Add Package, чтобы добавить его в основную цель (target) вашего приложения.

- Откройте основную цель (target) вашего приложения и в разделе Frameworks, Libraries, and Embedded Content убедитесь, что Pushwoosh iOS SDK был добавлен.

- Отлично! Вы только что интегрировали Pushwoosh visionOS SDK в ваш проект.
Добавьте необходимые возможности (Capabilities)
Anchor link to- Выберите корневой проект (1) и основную цель вашего приложения (2), затем перейдите на вкладку Signing and Capabilities.
- Нажмите кнопку + Capability (3) и выберите возможность Push Notifications.
- Затем добавьте возможность Background Modes и установите флажок Remote notifications (4).

- Отлично! Настройка возможностей (capabilities) в Xcode завершена.
Добавьте код инициализации Pushwoosh
Anchor link to- Добавьте следующий код в ваше приложение
import SwiftUIimport Pushwoosh
class AppDelegate: NSObject, UIApplicationDelegate, UNUserNotificationCenterDelegate, PWMessagingDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
Pushwoosh.sharedInstance().registerForPushNotifications() Pushwoosh.sharedInstance().delegate = self return true }
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { Pushwoosh.sharedInstance().handlePushRegistration(deviceToken) }
func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: any Error) { Pushwoosh.sharedInstance().handlePushRegistrationFailure(error) print("\(error.localizedDescription)") }
func pushwoosh(_ pushwoosh: Pushwoosh, onMessageOpened message: PWMessage) { print("Message opened: \(message.payload!)") }
func pushwoosh(_ pushwoosh: Pushwoosh, onMessageReceived message: PWMessage) { print("Message received: \(message.payload!)") }}
@mainstruct newdemoApp: App { @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
var body: some Scene { WindowGroup { ContentView() } }}- В ваш файл
Info.plistдобавьте следующие ключи типа string:
<key>Pushwoosh_APPID</key><string>XXXXX-XXXXX</string>
<key>Pushwoosh_API_TOKEN</key><string>YOUR_DEVICE_API_TOKEN</string>Pushwoosh_APPID: ваш код приложения Pushwoosh (Application Code).Pushwoosh_API_TOKEN: ваш токен Device API от Pushwoosh
Важно: Убедитесь, что вы предоставили токену доступ к нужному приложению в вашей панели управления Pushwoosh. Узнать больше

- Отлично! Теперь вы можете отправить ваше первое push-уведомление!


Поделитесь с нами своим мнением
Anchor link toВаши отзывы помогают нам улучшать наш продукт, поэтому мы будем рады, если вы поделитесь своим мнением о процессе интеграции SDK. Если вы столкнетесь с какими-либо трудностями, пожалуйста, не стесняйтесь сообщить нам об этом через эту форму.