gRPC ट्रांसपोर्ट
PushwooshGRPC मॉड्यूल एक वैकल्पिक gRPC ट्रांसपोर्ट लेयर प्रदान करता है जो Pushwoosh सर्वर के साथ संचार के लिए नेटवर्क प्रदर्शन में सुधार कर सकता है। जब उपलब्ध होता है, तो SDK स्वचालित रूप से समर्थित API विधियों के लिए gRPC का उपयोग करता है और यदि gRPC अनुपलब्ध है तो REST पर वापस आ जाता है।
यह कैसे काम करता है
Anchor link toडिफ़ॉल्ट रूप से, Pushwoosh SDK HTTPS पर REST API का उपयोग करके सर्वर के साथ संचार करता है। PushwooshGRPC मॉड्यूल एक वैकल्पिक gRPC ट्रांसपोर्ट जोड़ता है जो कई फायदे प्रदान करता है:
- कम लेटेंसी — gRPC स्थायी कनेक्शन के साथ HTTP/2 का उपयोग करता है
- छोटा पेलोड आकार — प्रोटोकॉल बफ़र्स JSON की तुलना में अधिक कॉम्पैक्ट होते हैं
- मल्टीप्लेक्सिंग — एक ही कनेक्शन पर कई अनुरोध भेजे जा सकते हैं
स्वचालित फ़ॉलबैक
Anchor link toमॉड्यूल में अंतर्निहित लचीलापन शामिल है:
| परिदृश्य | व्यवहार |
|---|---|
| gRPC उपलब्ध है | gRPC ट्रांसपोर्ट का उपयोग करता है |
| gRPC अनुपलब्ध है | REST पर वापस आ जाता है |
| नेटवर्क त्रुटि | REST के साथ पुनः प्रयास करता है |
आवश्यकताएँ
Anchor link to| आवश्यकता | संस्करण |
|---|---|
| iOS | 13.0+ |
| Xcode | 14.0+ |
| Swift | 5.0+ |
इंस्टॉलेशन
Anchor link toSwift Package Manager
Anchor link toPushwoosh SDK को एकीकृत करते समय अपने लक्ष्य में PushwooshGRPC जोड़ें:
- Xcode में, File → Add Package Dependencies पर जाएँ
- पैकेज URL दर्ज करें:
https://github.com/Pushwoosh/Pushwoosh-XCFramework - आवश्यक फ्रेमवर्क के अलावा
PushwooshGRPCका चयन करें
PushwooshFrameworkPushwooshCorePushwooshBridge
PushwooshGRPC— gRPC ट्रांसपोर्टPushwooshKeychain— स्थायी डिवाइस आईडीPushwooshLiveActivities— लाइव एक्टिविटीज़ सपोर्टPushwooshVoIP— VoIP पुश नोटिफिकेशनPushwooshForegroundPush— कस्टम फोरग्राउंड नोटिफिकेशन
CocoaPods
Anchor link toअपने Podfile में gRPC सबस्पेक जोड़ें:
target 'MyApp' do use_frameworks!
pod 'PushwooshXCFramework' pod 'PushwooshXCFramework/PushwooshGRPC'endफिर चलाएँ:
pod installउपयोग
Anchor link toकिसी कोड परिवर्तन की आवश्यकता नहीं है। एक बार जब आप अपने प्रोजेक्ट में PushwooshGRPC मॉड्यूल जोड़ लेते हैं, तो यह स्वचालित रूप से काम करता है:
- ऐप लॉन्च पर, SDK पता लगाता है कि gRPC ट्रांसपोर्ट उपलब्ध है
- जब संभव हो तो API कॉल gRPC के माध्यम से रूट किए जाते हैं
- यदि gRPC विफल हो जाता है, तो SDK स्वचालित रूप से REST पर वापस आ जाता है
समर्थित विधियाँ
Anchor link toनिम्नलिखित API विधियाँ gRPC ट्रांसपोर्ट का समर्थन करती हैं:
| विधि | gRPC सपोर्ट |
|---|---|
| डिवाइस पंजीकरण | हाँ |
| टैग (सेट/गेट) | हाँ |
| ऐप ओपन ट्रैकिंग | हाँ |
| पुश आँकड़े | हाँ |
उपयोग के मामले
Anchor link toPushwooshGRPC मॉड्यूल विशेष रूप से इनके लिए उपयोगी है:
- उच्च-आवृत्ति ईवेंट ट्रैकिंग — उन ऐप्स के लिए कम ओवरहेड जो कई ईवेंट भेजते हैं
- वास्तविक समय के एप्लिकेशन — समय-संवेदनशील संचालन के लिए कम लेटेंसी
- बैंडविड्थ-बाधित वातावरण — छोटे पेलोड आकार डेटा बचाते हैं
समस्या निवारण
Anchor link toमॉड्यूल सक्रिय है यह सत्यापित करना
Anchor link toजब आपका ऐप लॉन्च हो तो Xcode कंसोल लॉग की जाँच करें। आपको एक लॉग संदेश देखना चाहिए जैसे:
[Pushwoosh] gRPC transport: ENABLEDREST ट्रांसपोर्ट को बाध्य करना
Anchor link toयदि आपको डीबगिंग के लिए अस्थायी रूप से gRPC को अक्षम करने की आवश्यकता है, तो आप अपने लक्ष्य से PushwooshGRPC मॉड्यूल को हटा सकते हैं। जब gRPC उपलब्ध नहीं होगा तो SDK स्वचालित रूप से REST ट्रांसपोर्ट का उपयोग करेगा।