نقل gRPC
توفر وحدة PushwooshGRPC طبقة نقل gRPC اختيارية يمكنها تحسين أداء الشبكة للاتصال بخوادم Pushwoosh. عند توفرها، يستخدم SDK تلقائيًا gRPC لأساليب API المدعومة ويعود إلى REST إذا كان gRPC غير متاح.
كيف يعمل
Anchor link toبشكل افتراضي، يتصل Pushwoosh SDK بالخوادم باستخدام REST API عبر HTTPS. تضيف وحدة PushwooshGRPC طبقة نقل gRPC بديلة تقدم العديد من المزايا:
- زمن استجابة أقل — يستخدم gRPC بروتوكول HTTP/2 مع اتصالات مستمرة
- حجم حمولة أصغر — تكون Protocol Buffers أكثر ضغطًا من JSON
- تعدد الإرسال — يمكن إرسال طلبات متعددة عبر اتصال واحد
العودة التلقائية إلى REST
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 toأضف PushwooshGRPC إلى هدفك عند دمج Pushwoosh SDK:
- في Xcode، اذهب إلى File → Add Package Dependencies
- أدخل عنوان URL للحزمة:
https://github.com/Pushwoosh/Pushwoosh-XCFramework - اختر
PushwooshGRPCبالإضافة إلى الأطر المطلوبة
PushwooshFrameworkPushwooshCorePushwooshBridge
PushwooshGRPC— نقل gRPCPushwooshKeychain— معرّف جهاز دائمPushwooshLiveActivities— دعم Live ActivitiesPushwooshVoIP— إشعارات VoIPPushwooshForegroundPush— إشعارات مخصصة في المقدمة
CocoaPods
Anchor link toأضف المواصفة الفرعية لـ gRPC إلى ملف Podfile الخاص بك:
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 |
|---|---|
| تسجيل الجهاز | نعم |
| العلامات (Tags) (set/get) | نعم |
| تتبع فتح التطبيق | نعم |
| إحصائيات الإشعارات | نعم |
حالات الاستخدام
Anchor link toتعتبر وحدة PushwooshGRPC مفيدة بشكل خاص في الحالات التالية:
- تتبع الأحداث عالي التردد — تقليل العبء على التطبيقات التي ترسل العديد من الأحداث
- التطبيقات في الوقت الفعلي — زمن استجابة أقل للعمليات الحساسة للوقت
- البيئات ذات النطاق الترددي المحدود — أحجام الحمولة الأصغر توفر البيانات
استكشاف الأخطاء وإصلاحها
Anchor link toالتحقق من أن الوحدة نشطة
Anchor link toتحقق من سجلات وحدة التحكم في Xcode عند تشغيل تطبيقك. يجب أن ترى رسالة سجل مثل:
[Pushwoosh] gRPC transport: ENABLEDفرض استخدام نقل REST
Anchor link toإذا كنت بحاجة إلى تعطيل gRPC مؤقتًا لتصحيح الأخطاء، يمكنك إزالة وحدة PushwooshGRPC من هدفك. سيستخدم SDK تلقائيًا نقل REST عندما لا يكون gRPC متاحًا.