Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Ali lahko hkrati uporabim več SDK -jev za poročanje o nesreči z mvvmcross


Ali lahko hkrati uporabim več SDK -jev za poročanje o nesreči z mvvmcross


Uporaba večkratnih poročanja o nesreči hkrati z MVVMcross je lahko zapletena in jih ni vedno priporočljivo, zlasti v iOS -u. Tu je podroben pregled:

Splošni premisleki

1. Omejitve iOS: Na iOS -u uporaba večkratnih SDK -jev za poročanje o nesreči na splošno ni priporočljiva. To je zato, ker iOS obravnava izjeme in signale na način, ki ne zagotavlja, da bodo vsi novinarji Crash ujeli vse izjeme in signale, kar lahko vodi do zgrešenih nesreč [8]. Vendar pa nekateri razvijalci uspešno uporabljajo več novinarjev z nesrečami, kot sta Testflight in Crashlytics skupaj, vendar to zahteva skrbno nastavitev [4].

2. Prilagodljivost Androida: Na Androidu je bolj izvedljivo uporabljati večkratno poročanje o nesreči hkrati. Ključnega pomena je zagotoviti, da se vsak SDK inicializira v pravilnem vrstnem redu, da se izogne ​​konfliktom. Na primer, Instabug je treba inicializirati po drugih poročevalcev z nesrečami [8].

MVVMcross Integracija

Pri vključevanju poročanja o Crash SDK z MVVMcrossom morate razmisliti, kako vsak SDK obravnava neobjavljene izjeme in kako komunicirajo z okvirjem MVVMCross.

- Ravnanje izjem: sama MVVMcross ne zagotavlja vgrajenega poročanja o nesreči. Vključiti boste morali SDK tretjih oseb. Ko uporabljate več SDK -jev, se prepričajte, da so konfigurirani za pravilno ravnanje z izjemami, ne da bi se medsebojno posegali.

- Nastavitev osrednjega projekta: V svojem jednem projektu MVVMCross običajno ne boste neposredno obravnavali poročanja o nesreči. Namesto tega boste vključili poročanje o nesreči v projekte, specifične za platformo (npr. IOS in Android). Vendar pa boste morda želeli centralizirati logiko ravnanja z napakami v osnovnem projektu za doslednost na platformah.

Možnosti poročanja o sdk

Z MVVMcross je mogoče uporabiti več SDK -jev za nesreče:

- App Center: ponuja celovito poročanje o nesrečah in analitiko tako za iOS kot za Android. Združitev je enostavno integrirati s projekti Xamarin in MVVMcross [5].

- New Relic: ponuja robustno poročanje o nesreči in spremljanje uspešnosti. Podpira Android in lahko deluje skupaj z drugimi okviri poročanja o nesreči [2] [10].

- Instabug: Ponuja podrobna poročila o nesreči in orodja za povratne informacije o uporabnikih. Uporablja se lahko na iOS in Android, vendar z omenjenimi omejitvami na iOS [8].

Koraki izvajanja

Za izvajanje več SDK -jev za poročanje o nesreči z MVVMcross:

1. izberite SDK: Izberite SDK, ki jih želite uporabiti na podlagi vaše platforme in zahtev glede na funkcije.

2. Inicializirajte SDK: Prepričajte se, da je vsak SDK pravilno inicializiran v projektih, specifičnih za platformo. Na Androidu jih inicializirajte v pravilnem vrstnem redu, da se izognete konfliktom.

3. RAZPRAVLJANJE Izjem: Konfigurirajte vsak SDK, da ravnate z izjemnimi izjemami. Če uporabljate več SDK -jev, se prepričajte, da so postavljeni za delo, ne da bi se vmešavali v ravnanje z izjemami drug drugega.

4. Temeljito preizkusite: temeljito preizkusite svojo aplikacijo, da zagotovite, da vsi SDK -ji, ki poročajo o nesreči, delujejo po pričakovanjih, in ne povzročajo konfliktov.

Če povzamemo, čeprav je tehnično mogoče uporabiti večkratno poročanje SDK -jev z MVVMcross, zahteva skrbno nastavitev in testiranje, zlasti v iOS -u. Na Androidu je bolj preprost, vendar še vedno zahteva pozornost na vrstni red inicializacije.

Navedbe:
[1] https://stackoverflow.com/questions/19464339/xamarin-mvvmcross-and-crashreporting
[2] https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-android/install-configure/android-agent-crash-reporting/
[3] https://www.mvvmcross.com/documentation/advanced/mvxnotifyTask
[4] https://stackoverflow.com/questions/10755278/use-moultiple-crash-reporter-on-ios
[5] https://www.youtube.com/watch?v=jr2fe-wan9c
[6] https://stackoverflow.com/questions/59078153/mvvmcross-android-10-0-q-mainactivity-exception-crash-on-setcontentview/59558389
[7] https://github.com/mvvmcross/mvvmcross/isissue/4295
[8] https://help.instabug.com/sl/articles/2102240-can-i-use-the-instabug-crash-reporting-tool-in-arallel-with-nether-crash-reporters
[9] https://www.appdome.com/how-to/mobile-app-security/mobile-nata-encrypy/appdome-integrates-crash-reporting-sdk/
[10] https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-android/install-configure/android-agent-native-crash-reporting/
[11] https://support.google.com/googleplay/android-developer/answer/12246095?hl=sl
[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-of-os-ios-crash-reports-lldb