انتقل إلى المحتوى

نقل 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
المتطلبالإصدار
iOS13.0+
Xcode14.0+
Swift5.0+

التثبيت

Anchor link to

Swift Package Manager

Anchor link to

أضف PushwooshGRPC إلى هدفك عند دمج Pushwoosh SDK:

  1. في Xcode، اذهب إلى File → Add Package Dependencies
  2. أدخل عنوان URL للحزمة: https://github.com/Pushwoosh/Pushwoosh-XCFramework
  3. اختر PushwooshGRPC بالإضافة إلى الأطر المطلوبة
  • PushwooshFramework
  • PushwooshCore
  • PushwooshBridge

أضف المواصفة الفرعية لـ gRPC إلى ملف Podfile الخاص بك:

target 'MyApp' do
use_frameworks!
pod 'PushwooshXCFramework'
pod 'PushwooshXCFramework/PushwooshGRPC'
end

ثم قم بتشغيل:

Terminal window
pod install

الاستخدام

Anchor link to

لا يلزم إجراء أي تغييرات في الكود. بمجرد إضافة وحدة PushwooshGRPC إلى مشروعك، فإنها تعمل تلقائيًا:

  1. عند تشغيل التطبيق، يكتشف SDK أن نقل gRPC متاح
  2. يتم توجيه استدعاءات API عبر gRPC عندما يكون ذلك ممكنًا
  3. إذا فشل 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 متاحًا.