iOS SDK उन्नत एकीकरण मार्गदर्शिका
यह अनुभाग Pushwoosh iOS SDK के उन्नत एकीकरण के बारे में जानकारी प्रदान करता है।
बैकग्राउंड मोड
Anchor link toइस कार्यक्षमता को सक्षम करने के लिए, आपको अपने प्रोजेक्ट में बैकग्राउंड मोड जोड़ने होंगे।
बैकग्राउंड मोड सक्षम करने के चरण
Anchor link to- अपने प्रोजेक्ट को Xcode में खोलें और प्रोजेक्ट नेविगेटर में इसे चुनें।
- बाएं पैनल से अपने ऐप टारगेट को चुनें।
- Signing & Capabilities टैब पर जाएं।
- ऊपर-बाएं कोने में + Capability बटन पर क्लिक करें।
- सूची से Background Modes को खोजें और चुनें।
- Background Modes सेक्शन में, बॉक्स को चेक करके Remote notifications को सक्षम करें।
एक बार पूरा होने पर, आपका ऐप बैकग्राउंड में चलने के दौरान पुश नोटिफिकेशन, जिसमें साइलेंट नोटिफिकेशन भी शामिल हैं, को हैंडल करने में सक्षम होगा।
फोरग्राउंड मोड
Anchor link toडिफ़ॉल्ट रूप से, Pushwoosh iOS SDK ऐप के फोरग्राउंड में चलने पर नोटिफिकेशन बैनर प्रदर्शित करता है।
आप अपने कोड में (यानी, अपने AppDelegate में) निम्नलिखित बूलियन फ़्लैग सेट करके इस व्यवहार को नियंत्रित कर सकते हैं:
// Set false to disable foreground notifications, true to enable itPushwoosh.sharedInstance().showPushnotificationAlert = true// Set 0 to disable foreground notifications, 1 to enable it[[Pushwoosh sharedInstance] setShowPushnotificationAlert:0];लॉग स्तर
Anchor link toPushwoosh iOS SDK निम्नलिखित लॉगिंग स्तरों का समर्थन करता है:
NONE- SDK से कोई लॉग नहीं।ERROR- कंसोल में केवल त्रुटि संदेश प्रदर्शित करता है।WARNING- त्रुटियों के अतिरिक्त चेतावनियां प्रदर्शित करता है।INFO- सूचनात्मक संदेश शामिल करता है (डिफ़ॉल्ट सेटिंग)।DEBUG- विस्तृत डीबग जानकारी शामिल करता है।
डिफ़ॉल्ट रूप से, लॉगिंग स्तर INFO पर सेट होता है, यह सुनिश्चित करते हुए कि SDK डेवलपर कंसोल को अव्यवस्थित किए बिना प्रासंगिक जानकारी प्रदान करता है।
लॉगिंग स्तर को संशोधित करने के लिए, अपने ऐप की Info.plist फ़ाइल में Pushwoosh_LOG_LEVEL कुंजी को अपडेट करें:
<key>Pushwoosh_LOG_LEVEL</key><string>YOUR_LOG_LEVEL</string>वैकल्पिक रूप से, आप नीचे दिए गए कोड स्निपेट का उपयोग करके लॉग स्तर बदल सकते हैं:
Pushwoosh.Debug.setLogLevel(.PW_LL_DEBUG)YOUR_LOG_LEVEL को वांछित स्तर (जैसे, DEBUG या ERROR) से बदलें।
कस्टम UNNotificationCenterDelegate
Anchor link toयदि आप अपना स्वयं का UNNotificationCenterDelegate उपयोग करना चाहते हैं (उदाहरण के लिए, स्थानीय नोटिफिकेशन के लिए), तो आपको उचित व्यवहार के लिए Pushwoosh SDK को इसके बारे में सूचित करना चाहिए। आप इसे Pushwoosh इंस्टेंस की notificationCenterDelegateProxy प्रॉपर्टी के साथ कर सकते हैं:
Pushwoosh.sharedInstance()?.notificationCenterDelegateProxy.add(my_delegate)[Pushwoosh.sharedInstance.notificationCenterDelegateProxy addNotificationCenterDelegate:my_delegate];फिर, अपने डेलिगेट में UNNotificationCenterDelegate विधियों को लागू करें:
func userNotificationCenter( _ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) { if (!PWMessage.isPushwooshMessage(notification.request.content.userInfo)) { // Handle your notification completionHandler(UNNotificationPresentationOptions.alert) }}
func userNotificationCenter( _ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) { if (!PWMessage.isPushwooshMessage(response.notification.request.content.userInfo)) { // Handle your notification completionHandler() }}- (void)userNotificationCenter:(UNNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler { if (![PWMessage isPushwooshMessage:notification.request.content.userInfo]) { // Handle your message completionHandler(UNNotificationPresentationOptionAlert); }}
- (void)userNotificationCenter:(UNNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)(void))completionHandler { if (![PWMessage.isPushwooshMessage:response.notification.request.content.userInfo]) { // Handle your message completionHandler(); }}Pushwoosh लेज़ी इनिशियलाइज़ेशन
Anchor link toPushwoosh_LAZY_INITIALIZATION फ़्लैग एप्लिकेशन शुरू होने पर Pushwoosh SDK के स्वचालित इनिशियलाइज़ेशन को रोकता है। यह Pushwoosh SDK सेवाओं को कब शुरू किया जाए, इस पर अधिक नियंत्रण की अनुमति देता है।
जब यह फ़्लैग सक्षम होता है, तो Pushwoosh SDK अपनी सेवाओं को तब तक शुरू नहीं करता जब तक कि Pushwoosh iOS SDK विधियों को स्पष्ट रूप से कॉल नहीं किया जाता।
Info.plist में निम्नलिखित एंट्री जोड़ें:
<key>Pushwoosh_LAZY_INITIALIZATION</key><true/>उपयोग के मामले
-
नियंत्रित SDK इनिशियलाइज़ेशन – Pushwoosh_LAZY_INITIALIZATION फ़्लैग Pushwoosh SDK स्टार्टअप में देरी करने की अनुमति देता है, जिससे पुश सेवाओं को कब सक्रिय किया जाए, इस पर अधिक नियंत्रण मिलता है।
-
स्थगित पुश सक्रियण – कुछ एप्लिकेशनों में, पुश नोटिफिकेशन को केवल विशिष्ट परिस्थितियों में ही इनिशियलाइज़ किया जाना चाहिए। इस फ़्लैग को सक्षम करने से यह सुनिश्चित होता है कि Pushwoosh SDK तभी शुरू होता है जब स्पष्ट रूप से अनुरोध किया जाता है।
-
उपयोगकर्ता-विशिष्ट पुश कॉन्फ़िगरेशन – कुछ एप्लिकेशनों को उपयोगकर्ता वरीयताओं या खाता सेटिंग्स के आधार पर पुश नोटिफिकेशन सेटिंग्स को अनुकूलित करने की आवश्यकता हो सकती है। लेज़ी इनिशियलाइज़ेशन के साथ, Pushwoosh SDK तभी शुरू होता है जब उचित कॉन्फ़िगरेशन निर्धारित किया जाता है।
Info.plist गुणों की पूरी सूची
Anchor link to| प्रॉपर्टी | विवरण | संभावित मान |
|---|---|---|
Pushwoosh_APPID | प्रोडक्शन बिल्ड के लिए Pushwoosh एप्लिकेशन आईडी सेट करता है। | XXXXX-XXXXX प्रकार: स्ट्रिंग |
Pushwoosh_APPID_Dev | डेवलपमेंट बिल्ड के लिए Pushwoosh एप्लिकेशन आईडी सेट करता है। | XXXXX-XXXXX प्रकार: स्ट्रिंग |
Pushwoosh_SHOW_ALERT | नोटिफिकेशन फोरग्राउंड अलर्ट दिखाता है। | YES (डिफ़ॉल्ट) / NO प्रकार: बूलियन |
Pushwoosh_ALERT_TYPE | नोटिफिकेशन अलर्ट स्टाइल सेट करता है। | BANNER (डिफ़ॉल्ट) / ALERT / NONE प्रकार: स्ट्रिंग |
Pushwoosh_BASEURL | Pushwoosh सर्वर बेस URL को ओवरराइड करता है। | https://cp.pushwoosh.com/json/1.3/ (डिफ़ॉल्ट) प्रकार: स्ट्रिंग |
Pushwoosh_AUTO_ACCEPT_DEEP_LINK_FOR_SILENT_PUSH | यदि YES, तो साइलेंट पुश में प्राप्त डीप लिंक स्वचालित रूप से प्रोसेस किए जाएंगे। | YES (डिफ़ॉल्ट) / NO प्रकार: बूलियन |
Pushwoosh_ALLOW_SERVER_COMMUNICATION | SDK को Pushwoosh सर्वर पर नेटवर्क रिक्वेस्ट भेजने की अनुमति देता है। | YES (डिफ़ॉल्ट) / NO प्रकार: बूलियन |
Pushwoosh_ALLOW_COLLECTING_DEVICE_DATA | SDK को डिवाइस डेटा (OS संस्करण, लोकेल और मॉडल) को सर्वर पर एकत्र करने और भेजने की अनुमति देता है। | YES (डिफ़ॉल्ट) / NO प्रकार: बूलियन |
Pushwoosh_ALLOW_COLLECTING_DEVICE_OS_VERSION | SDK को डिवाइस के OS संस्करण को सर्वर पर एकत्र करने और भेजने की अनुमति देता है। | YES (डिफ़ॉल्ट) / NO प्रकार: बूलियन |
Pushwoosh_ALLOW_COLLECTING_DEVICE_LOCALE | SDK को डिवाइस लोकेल को सर्वर पर एकत्र करने और भेजने की अनुमति देता है। | YES (डिफ़ॉल्ट) / NO प्रकार: बूलियन |
Pushwoosh_ALLOW_COLLECTING_DEVICE_MODEL | SDK को डिवाइस मॉडल को सर्वर पर एकत्र करने और भेजने की अनुमति देता है। | YES (डिफ़ॉल्ट) / NO प्रकार: बूलियन |
Pushwoosh_LOG_LEVEL | Pushwoosh SDK लॉगिंग स्तर। विवरण के लिए, लॉग स्तर नियंत्रित करना देखें। | NONE / ERROR / WARNING / INFO (डिफ़ॉल्ट) / DEBUG / VERBOSE प्रकार: स्ट्रिंग |
Pushwoosh_PURCHASE_TRACKING_ENABLED | SDK को इन-ऐप खरीदारी को ट्रैक करने की अनुमति देता है। कस्टमर जर्नी बिल्डर के लिए आवश्यक है। | YES / NO (डिफ़ॉल्ट) प्रकार: बूलियन |