Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon هل يمكنني استخدام SDKs متعددة التقارير في وقت واحد مع MVVMCROSS


هل يمكنني استخدام SDKs متعددة التقارير في وقت واحد مع MVVMCROSS


يمكن أن يكون استخدام SDKs المتعددة في وقت واحد مع MVVMCROSS معقدًا وقد لا يوصى به دائمًا ، خاصة على iOS. إليك نظرة عامة مفصلة:

اعتبارات عامة

1. قيود iOS: على iOS ، لا ينصح بشكل عام باستخدام SDKs التقارير المتعددة. وذلك لأن iOS يتعامل مع الاستثناءات والإشارات بطريقة لا تضمن أن جميع مراسلي التصادم سوف يلتقطون جميع الاستثناءات والإشارات ، مما يؤدي إلى حدوث حوادث ضائعة [8]. ومع ذلك ، فقد استخدم بعض المطورين بنجاح العديد من مراسلي التعطل مثل TestFlight و Crashlytics معًا ، لكن هذا يتطلب إعدادًا دقيقًا [4].

2. مرونة Android: على Android ، من الممكن استخدام SDKs المتعددة في وقت واحد. ومع ذلك ، من الأهمية بمكان التأكد من تهيئة كل SDK بالترتيب الصحيح لتجنب النزاعات. على سبيل المثال ، يجب تهيئة Instabug بعد مراسلي تحطم آخرين [8].

تكامل MVVMCROSS

عند دمج تصادم الإبلاغ عن SDKs مع MVVMCROSS ، تحتاج إلى التفكير في كيفية تعامل كل SDK مع استثناءات غير معلوم وكيفية تفاعلها مع إطار MVVMCROSS.

- معالجة الاستثناءات: لا يوفر MVVMcross نفسها تقارير تصادم مدمجة. ستحتاج إلى دمج SDK من طرف ثالث. عند استخدام SDKs متعددة ، تأكد من تكوينها للتعامل مع الاستثناءات بشكل صحيح دون التدخل مع بعضها البعض.

- إعداد المشروع الأساسي: في مشروع MVVMcross Core الخاص بك ، لن تتعامل عادةً مع التقارير التقديرية مباشرة. بدلاً من ذلك ، ستقوم بدمج تقارير التصادم في المشاريع الخاصة بالمنصة (على سبيل المثال ، iOS و Android). ومع ذلك ، قد ترغب في تركيز منطق معالجة الأخطاء في المشروع الأساسي للتناسق عبر المنصات.

Crash Reporting Options SDK

يمكن استخدام العديد من SDKs لإبلاغ Crash مع MVVMCROSS:

- مركز التطبيق: يوفر تقارير وتحليلات شاملة للتصادم لكل من iOS و Android. من السهل الاندماج مع مشاريع Xamarin و MVVMcross [5].

- New Relic: يقدم تقارير تصادم قوية ومراقبة الأداء. وهو يدعم Android ويمكنه العمل جنبًا إلى جنب مع أطر الإبلاغ الأخرى [2] [10].

- Instabug: يوفر تقارير تصادم مفصلة وأدوات ملاحظات المستخدم. يمكن استخدامه على كل من iOS و Android ، ولكن مع القيود المذكورة على iOS [8].

خطوات التنفيذ

لتنفيذ العديد من التقارير SDKs مع MVVMCROSS:

1. اختر SDKs: حدد SDKs التي تريد استخدامها بناءً على متطلبات النظام الأساسي والميزات الخاصة بك.

2. تهيئة SDKs: تأكد من تهيئة كل SDK بشكل صحيح في المشاريع الخاصة بالنظام الأساسي. على Android ، قم بتهيئتها بالترتيب الصحيح لتجنب النزاعات.

3. التعامل مع الاستثناءات: تكوين كل SDK للتعامل مع الاستثناءات غير المطلوبة. إذا كنت تستخدم SDKs متعددة ، تأكد من إعدادها للعمل معًا دون التدخل في معالجة استثناء بعضها البعض.

4. الاختبار بدقة: اختبر تطبيقك بدقة للتأكد من أن جميع SDKs التقارير التي تعمل على التقارير تعمل كما هو متوقع ولا تسبب أي تعارضات.

باختصار ، على الرغم من أنه من الممكن تقنيًا استخدام SDKs متعددة من التقارير مع MVVMCROSS ، فإنه يتطلب إعداد واختبار دقيق ، وخاصة على iOS. على Android ، إنه أكثر وضوحًا ولكن لا يزال يتطلب الاهتمام بترتيب التهيئة.

الاستشهادات:
[1] https://stackoverflow.com/questions/19464339/xamarin-mvmcross-and-crashreporting
[2] https://docs.newrelic.com/docs/mobile-monitoring/new-mobile-droid/install-configure/android-agent-crash-reporting/
[3] https://www.mvvmcross.com/documentation/advanced/mvxnotifytask
[4] https://stackoverflow.com/questions/10755278/use-multiple-crash-reporter-on-ios
[5] https://www.youtube.com/watch؟v=jr2fe-wan9c
[6] https://stackoverflow.com/questions/59078153/MVVMCROSS-DROID-10-0-Q-MAINACTIVAL-EXCEPTION-CRASH-ON-SETCONTENTVIEW/59558389
[7] https://github.com/mvvmcross/mvvmcross/issues/4295
[8] https://help.instabug.com/en/articles/2102240-can-use-the-instabug-crash-reporting-tool-in-parald-with-to-crash-reporters
[9]
[10]
[11] https://support.google.com/googleplay/android-developer/answer/12246095؟hl=en
[12] https://learn.microsoft.com/en-us/appcenter/sdk/crashes/android
[13] https://learn.microsoft.com/en-us/appcenter/sdk/troubleshooting/xamarin
[14] https://www.guardsquare.com/blog/making-the-most-out-of-ios-crash-neports-with-lldb