# स्विफ्ट पैकेज मैनेजर सेटअप

## आवश्यकताएँ

* यदि आपके पास पहले से [Pushwoosh](https://pushwoosh.com/) खाता नहीं है तो एक बनाएँ।
* Xcode के नए संस्करण वाला एक Mac (केवल Apple Silicon)।
* एक iOS पुश प्रमाणपत्र। विवरण देखें: [iOS कॉन्फ़िगरेशन](/hi/developer/first-steps/connect-messaging-services/ios-configuration/ios-token-based-configuration/)

## एकीकरण

1. Xcode में अपना प्रोजेक्ट खोलें और **प्रोजेक्ट की सेटिंग्स** -> **पैकेज निर्भरताएँ** पर जाएँ -> और **'+'** बटन दबाएँ।

<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-1.webp" alt=""/>

2. निम्नलिखित पैकेज URL दर्ज करें:

[https://github.com/Pushwoosh/PushwooshVision-XCFramework](https://github.com/Pushwoosh/PushwooshVision-XCFramework)

3. **निर्भरता नियम** सेट करें

<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-2.webp" alt=""/>

4. अगली स्क्रीन पर, अपना पैकेज चुनने के लिए, Pushwoosh पैकेज चुनें और अपने मुख्य ऐप टारगेट में **पैकेज जोड़ें**।

<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-3.webp" alt=""/>

5. अपना मुख्य ऐप टारगेट खोलें और **फ्रेमवर्क, लाइब्रेरीज़, और एम्बेडेड कंटेंट** के तहत सुनिश्चित करें कि Pushwoosh iOS SDK जोड़ा गया है।

<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-4.webp" alt=""/>

6. बहुत बढ़िया! आपने अभी-अभी Pushwoosh visionOS SDK को अपने प्रोजेक्ट में एकीकृत किया है।

## आवश्यक क्षमताएँ जोड़ें

1. रूट प्रोजेक्ट (1) और अपने मुख्य ऐप टारगेट (2) का चयन करें, फिर **साइनिंग और क्षमताएँ** टैब पर जाएँ।
2. **+ क्षमता** बटन (3) दबाएँ और **पुश सूचनाएँ** क्षमता का चयन करें।
3. फिर, **बैकग्राउंड मोड** क्षमता जोड़ें और **रिमोट सूचनाएँ** चेक बॉक्स (4) को चेक करें।

<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-5.webp" alt=""/>

4. बहुत बढ़िया! Xcode क्षमताओं का कॉन्फ़िगरेशन पूरा हो गया है।

## Pushwoosh इनिशियलाइज़ेशन कोड जोड़ें

1. अपने ऐप में निम्नलिखित कोड जोड़ें

```swift
import SwiftUI
import 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!)")
    }
}

@main
struct newdemoApp: App {
    @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate

    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}
```

2. अपने `Info.plist` में, निम्नलिखित स्ट्रिंग-प्रकार की कुंजियाँ जोड़ें:

```xml
<key>Pushwoosh_APPID</key>
<string>XXXXX-XXXXX</string>

<key>Pushwoosh_API_TOKEN</key>
<string>YOUR_DEVICE_API_TOKEN</string>
```

* `Pushwoosh_APPID`: आपका Pushwoosh एप्लिकेशन कोड।
* `Pushwoosh_API_TOKEN`: आपका [Pushwoosh डिवाइस API टोकन](/hi/developer/api-reference/api-access-token/#device-api-token)

> **महत्वपूर्ण:** सुनिश्चित करें कि आप अपने Pushwoosh कंट्रोल पैनल में टोकन को सही एप्लिकेशन तक पहुँच प्रदान करते हैं। [और जानें](/hi/developer/api-reference/api-access-token/#edit-token)


<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-6.webp" alt=""/>

<Aside type="note">
XXXXX-XXXXX को अपनी Pushwoosh APP ID से बदलें
</Aside>

3. बहुत बढ़िया! अब आप अपनी पहली पुश सूचना भेज सकते हैं!

<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-7.webp" alt=""/>

<img src="/setting-up-pushwoosh-visionos-sdk-swift-package-manager-setup-8.webp" alt=""/>

### अपनी प्रतिक्रिया हमारे साथ साझा करें

आपकी प्रतिक्रिया हमें एक बेहतर अनुभव बनाने में मदद करती है, इसलिए यदि आपको SDK एकीकरण प्रक्रिया के दौरान कोई समस्या आती है तो हम आपसे सुनना पसंद करेंगे। यदि आपको कोई कठिनाई आती है, तो कृपया [इस फ़ॉर्म के माध्यम से](https://docs.google.com/forms/d/e/1FAIpQLSd\_0b8jwn-V\_JmoPLIxIFYbHACCQhrzidOZV3ELywoQPXRSxw/viewform) अपने विचार हमारे साथ साझा करने में संकोच न करें।