# टेस्ट पुश डिवाइस जोड़ें

आप ऐप उपयोगकर्ताओं को पुश नोटिफिकेशन भेजने से पहले यह देखने के लिए टेस्ट डिवाइस का उपयोग कर सकते हैं कि वे डिवाइस पर कैसे दिखते हैं। ऐसा करने के लिए, आपको अपने डिवाइस (जिसमें आपका ऐप इंस्टॉल है) को **टेस्ट डिवाइस** के रूप में **रजिस्टर** करना होगा।

टेस्ट डिवाइस जोड़ने के लिए:
1. अपने Pushwoosh अकाउंट में **टेस्ट डिवाइस** सेक्शन पर जाएं।

<img src="/test-your-integration-test-devices-1.webp" alt="Pushwoosh अकाउंट में टेस्ट डिवाइस सेक्शन"/>

2. ऊपरी-दाएँ कोने में **Add Device** ड्रॉपडाउन बटन पर क्लिक करें और **Push** चुनें।

<img src="/test-your-integration-test-devices-2.webp" alt="टेस्ट डिवाइस सेक्शन में Push विकल्प के साथ Add Device ड्रॉपडाउन बटन"/>

आप दो तरीकों में से किसी एक का उपयोग करके पुश टेस्ट डिवाइस जोड़ सकते हैं: QR कोड के साथ ऑटो-कॉन्फ़िगरेशन या मैन्युअल कॉन्फ़िगरेशन।

## टेस्ट डिवाइस को स्वचालित रूप से जोड़ना

यह तरीका केवल iOS और Android डिवाइस के लिए उपयुक्त है।

1. **टेस्ट डिवाइस** सेक्शन में, **Add Device** पर क्लिक करें और **Push** चुनें।
2. पॉपअप में दिखाई देने वाले QR कोड को स्कैन करें। यह एक डीप लिंक उत्पन्न करेगा जिसे Pushwoosh SDK आपके डिवाइस को स्वचालित रूप से एक टेस्ट डिवाइस के रूप में रजिस्टर करने के लिए पार्स कर सकता है।
3. ऐप कॉन्फ़िगरेशन में डीप लिंक जोड़ें:
* **Android के लिए**: इसे `AndroidManifest.xml` फ़ाइल में जोड़ें।
* **iOS के लिए**: इसे `Info.plist` फ़ाइल में जोड़ें।

अधिक जानकारी के लिए, [कार्यान्वयन सेक्शन](/hi/developer/first-steps/test-your-integration/test-devices#implementation) में Android और iOS के लिए दिए गए निर्देशों का पालन करें।

<Aside type="tip" title="QR रीडर्स के लिए टिप">
सुनिश्चित करें कि स्कैन किया गया लिंक QR रीडर के वेबव्यू में नहीं, बल्कि नेटिव ब्राउज़र में खुले। कई QR रीडर्स में इस उद्देश्य के लिए "ब्राउज़र में खोलें" बटन होता है।
</Aside>


## टेस्ट डिवाइस को मैन्युअल रूप से जोड़ना

यदि आप किसी टेस्ट डिवाइस को मैन्युअल रूप से रजिस्टर करना पसंद करते हैं, तो इन चरणों का पालन करें:

1. एक सफल [`/registerDevice`](/hi/developer/api-reference/device-api#registerdevice) API कॉल से डिवाइस की **हार्डवेयर आईडी (HWID)** प्राप्त करें।
2. आवश्यक फ़ील्ड भरें:
   * **डिवाइस का नाम**: टेस्ट डिवाइस के लिए एक वर्णनात्मक नाम (उदाहरण के लिए, "जॉन का एंड्रॉइड")।
   * **डिवाइस HWID**: डिवाइस की अद्वितीय हार्डवेयर आईडी।
   * **डिवाइस का प्रकार**: प्लेटफ़ॉर्म चुनें (उदाहरण के लिए, iOS, Android, Web)।
   * **विवरण (वैकल्पिक)**: संदर्भ के लिए डिवाइस के बारे में कोई भी नोट्स या विवरण जोड़ें।
3. टेस्ट डिवाइस को रजिस्टर करने के लिए **सहेजें** पर क्लिक करें।

एक बार रजिस्टर हो जाने पर, टेस्ट डिवाइस **टेस्ट डिवाइस** सेक्शन में उपलब्ध होगा।


## कार्यान्वयन

### Android

1. अपने एप्लिकेशन के साथ [Pushwoosh SDK को एकीकृत करें](/hi/developer/pushwoosh-sdk/android-sdk/firebase-integration/integrate-pushwoosh-android-sdk/)।

2. अपने _AndroidManifest.xml_ में **DeepLinkActivity** जोड़ें:

```txt
<activity
          android:name="com.pushwoosh.DeepLinkActivity"
          android:theme="@android:style/Theme.Translucent.NoTitleBar" >
  <intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />

    <data android:scheme="pushwoosh-YOUR_PUSHWOOSH_APP_ID" />
  </intent-filter>
</activity>
```

ऊपर दिए गए xml में _YOUR\_PUSHWOOSH\_APP\_ID_ को अपनी Pushwoosh ऐप आईडी से बदलना न भूलें।\
उदाहरण: _\<data android:scheme="pushwoosh-ABCDE-EDCBA" />_

3. पुश नोटिफिकेशन के लिए सब्सक्राइब करने के लिए एप्लिकेशन लॉन्च करें।

4. किसी भी उपयुक्त QR कोड स्कैनर ऐप* का उपयोग करके **टेस्ट डिवाइस** फ़ॉर्म में QR कोड को स्कैन करें। एक टोस्ट संदेश दिखाई देगा जो टेस्ट डिवाइस पंजीकरण की स्थिति को इंगित करेगा।

\* अधिकांश QR कोड स्कैनिंग ऐप ऐसे डीप लिंक को ठीक से संभालते हैं, यहाँ उनमें से कुछ दिए गए हैं:

* [QR & Barcode Scanner, Gamma Play](https://play.google.com/store/apps/details?id=com.gamma.scan)
* [QR & Barcode Scanner, Maker, AppSourceHub](https://play.google.com/store/apps/details?id=qrcode.scanner.qrmaker)

### iOS

1. अपने एप्लिकेशन के साथ [Pushwoosh SDK को एकीकृत करें](/hi/developer/pushwoosh-sdk/ios-sdk/setting-up-pushwoosh-ios-sdk/)।

2. _Info.plist_ फ़ाइल में _pushwoosh-YOUR\_PUSHWOOSH\_APP\_ID_ URL स्कीम जोड़ें:

```xml
<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleTypeRole</key>
    <string>Editor</string>
    <key>CFBundleURLName</key>
    <string>com.pushwoosh.scheme</string>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>pushwoosh-YOUR_PUSHWOOSH_APP_ID</string>
    </array>
  </dict>
</array>
```

ऊपर दिए गए XML में _YOUR\_PUSHWOOSH\_APP\_ID_ को अपनी Pushwoosh ऐप आईडी से बदलना न भूलें।\
उदाहरण: _pushwoosh-ABCDE-EDCBA_

<Aside type="caution">
 **यदि आपका प्रोजेक्ट केवल SwiftUI के साथ बनाया गया है, तो आपको एक SceneDelegate जोड़ना होगा**

SwiftUI ऐप जीवनचक्र को UIKit से अलग तरीके से प्रबंधित करता है। यह सुनिश्चित करने के लिए कि कुछ सिस्टम इवेंट सही ढंग से काम करें - जैसे पुश नोटिफिकेशन के लिए एक टेस्ट डिवाइस रजिस्टर करना या डीप लिंक को संभालना - आपको स्पष्ट रूप से एक SceneDelegate जोड़ना और रजिस्टर करना होगा।

इसके बिना, ये इवेंट ठीक से ट्रिगर नहीं हो सकते हैं, और पुश पंजीकरण विफल हो सकता है।

यदि आप SwiftUI का उपयोग नहीं कर रहे हैं, तो आप इस चरण को छोड़ सकते हैं और सीधे **चरण 3** पर जा सकते हैं।
</Aside>

**Info.plist**
<details>
  <summary>अपने `Info.plist` में `UIApplicationSceneManifest` जोड़ें।</summary>

  ```xml
	<key>UIApplicationSceneManifest</key>
	<dict>
		<key>UIApplicationSupportsMultipleScenes</key>
		<true/>
		<key>UISceneConfigurations</key>
		<dict>
			<key>UIWindowSceneSessionRoleApplication</key>
			<array>
				<dict>
					<key>UISceneConfigurationName</key>
					<string></string>
					<key>UISceneDelegateClassName</key>
					<string>$(PRODUCT_MODULE_NAME).SceneDelegate</string>
				</dict>
			</array>
		</dict>
	</dict>
  ```

</details>

**SceneDelegate**
<details>
  <summary>नीचे दिए गए उदाहरण में दिखाए अनुसार `SceneDelegate` कोड जोड़ें।</summary>

  ```swift
import SwiftUI

@main
struct DemoApp: App {
    @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
    
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

class SceneDelegate: NSObject, UIWindowSceneDelegate {
    
    var window: UIWindow?

    func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
        guard let _ = (scene as? UIWindowScene) else { return }
    }
}

class AppDelegate: NSObject, UIApplicationDelegate, PWMessagingDelegate {
    
    func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {
        let sceneConfig: UISceneConfiguration = UISceneConfiguration(name: nil, sessionRole: connectingSceneSession.role)
        sceneConfig.delegateClass = SceneDelegate.self
        return sceneConfig
    }

}
  ```

</details>

3. पुश नोटिफिकेशन के लिए सब्सक्राइब करने के लिए एप्लिकेशन लॉन्च करें।

4. किसी भी उपयुक्त QR कोड स्कैनर का उपयोग करके **टेस्ट डिवाइस** फ़ॉर्म में QR कोड को स्कैन करें।