عن المشروع

تمثل حزمة aptabase-maui مكتبة .NET SDK تضيف أدوات قياس وتحليلات Aptabase إلى تطبيقات واجهة المستخدم متعددة المنصات (.NET Multi-platform App UI - MAUI). وترى منصة Aptabase نفسها كمجموعة تحليلات مفتوحة المصدر، تراعي الخصوصية أولاً، وبسيطة الاستخدام لتطبيقات الهواتف والأجهزة المكتبية والتطبيقات الويب. تُثبَّت الحزمة عبر NuGet بإضافة مرجع حزمة (PackageReference) إلى ملف المشروع. وبعد التثبيت، يتم تهيئة الـ SDK داخل ملف MauiProgram.cs باستخدام طريقة التمديد UseAptabase، مع تمرير مفتاح تطبيقك بالإضافة إلى إعدادات اختيارية تشمل وضع التصحيح (debug mode)، وتمكين إبلاغ الأعطال، والحفظ المؤقت للأحداث على القرص. بعد التسجيل، يتوفّر服务对象 IAptabaseClient عبر حقن التبعيات (dependency injection)، ويمكن الاستيثاق منه في أي صفحة أو نموذج عرض (view model). يقوم المطوّرون باستدعاء TrackEvent بشكل يدني لتسجيل أحداث مخصصة. يمكن أن تحمل الأحداث خصائص مخصصة محدَّدة بقيمتي string وnumber فقط. ويغني الـ SDK كل حدث تلقائياً بسياق مفيد مثل نظام التشغيل وإصدار التطبيق، لكنه لا يتتبّع أي شيء تلقائياً— فالمطور هو المتحكّم بما يُرسَل بالضبط. يدعم TrackError إبلاغ كل من الاستثناءات المُعالَجة (handled) وغير المُعالَجة (unhandled). يمكن الإبلاغ عن الاستثناءات المُعالَجة بوصفها أخطاء ذات شدّة عادية أو fatal. وعند تفعيل EnableCrashReporting، يلتقط الـ SDK تلقائياً أيضاً الاستثناءات غير المُعالَجة، واستثناءات المهام غير المُراقَبة (unobserved task exceptions)،以及 التوقفات الكارثية (crashes). وتتضمّن كل تقرير خطأ نوع الاستثناء ورسالته وtrace المكدّس (stack trace) ودرجة الشدة وتصنيف المصدر. يضمن تعيين EnablePersistence تخزين الأحداث على القرص قبل إرسالها إلى خوادم Aptabase، مما يساعد في ضمان توصيل بيانات الأعطال الكارثية حتى عندما لا يتمكن التطبيق من إعادة التشغيل فوراً. وتعمل جميع عمليات التتبع بشكل غير متزامن في الخلفية وبشكل لا يعرقل السطر المشغّل (non-blocking).