Vairāku avāriju ziņošana par SDK vienlaicīgi ar MVVMCross var būt sarežģīta, un to ne vienmēr var ieteikt, it īpaši iOS. Šeit ir detalizēts pārskats:
Vispārīgi apsvērumi
1. IOS ierobežojumi: iOS parasti nav ieteicams izmantot vairākus avārijas ziņojumus par SDK. Tas ir tāpēc, ka iOS apstrādā izņēmumus un signālus tādā veidā, kas negarantē, ka visi avārijas žurnālisti noķers visus izņēmumus un signālus, iespējams, izraisot nokavētas avārijas [8]. Tomēr daži izstrādātāji ir veiksmīgi izmantojuši vairākus avārijas žurnālistus, piemēram, TestFlight un Crashlytics, taču tas prasa rūpīgu iestatīšanu [4].
2. Android elastība: Android ir daudz iespējams vienlaikus izmantot vairākus avārijas ziņojumus par SDK. Tomēr ir svarīgi nodrošināt, lai katrs SDK tiktu inicializēts pareizā secībā, lai izvairītos no konfliktiem. Piemēram, Instabug jāinicializē pēc citiem avārijas žurnālistiem [8].
mvvmcross integrācija
Integrējot avāriju, ziņojot par SDK ar MVVMCross, jums jāapsver, kā katrs SDK apstrādā neizmantojamus izņēmumus un kā tie mijiedarbojas ar MVVMCross ietvaru.
- Izņēmumu apstrāde: pats MVVMCROSS nesniedz iebūvētus avārijas ziņojumus. Jums būs jāintegrē trešās puses SDK. Izmantojot vairākus SDK, pārliecinieties, ka tie ir konfigurēti, lai pareizi apstrādātu izņēmumus, neiejaucoties viens otram.
- Galvenā projekta iestatīšana: MVVMCROSS Core projektā jūs parasti netiekat galā ar avārijas ziņošanu. Tā vietā jūs integrēsit avārijas ziņojumus platformai specifiskos projektos (piemēram, iOS un Android). Tomēr jūs varētu vēlēties centralizēt kļūdu apstrādes loģiku galvenajā projektā, lai iegūtu konsekvenci dažādās platformās.
avārijas ziņošana par SDK opcijām
Ar MVVMCross var izmantot vairākus avārijas ziņojumus par SDK:
- Lietotņu centrs: nodrošina visaptverošu ziņu par avārijām un analītiku gan iOS, gan Android. To ir viegli integrēt ar Xamarin un MVVMCross projektiem [5].
- Jauna relikvija: piedāvā stabilu ziņošanu par avārijām un veiktspējas uzraudzību. Tas atbalsta Android un var strādāt kopā ar citiem avārijas ziņošanas ietvariem [2] [10].
- Instabug: nodrošina detalizētus avārijas pārskatus un lietotāju atgriezeniskās saites rīkus. To var izmantot gan iOS, gan Android, bet ar ievērojamajiem iOS ierobežojumiem [8].
ieviešanas darbības
Lai ieviestu vairākas avārijas, ziņojot par SDK ar MVVMCROSS:
1. Izvēlieties SDKS: atlasiet SDK, kuru vēlaties izmantot, pamatojoties uz jūsu platformu un funkciju prasībām.
2. Inicializēt SDK: pārliecinieties, vai katrs SDK tiek pareizi inicializēts platformas specifiskos projektos. Androidā inicializējiet tos pareizā secībā, lai izvairītos no konfliktiem.
3. Rokturējiet izņēmumus: konfigurējiet katru SDK, lai apstrādātu neizmantojamus izņēmumus. Ja izmantojat vairākus SDK, pārliecinieties, vai tie ir izveidoti, lai strādātu kopā, netraucējot viens otra izņēmumu apstrādi.
4. Rūpīgi pārbaude: rūpīgi pārbaudiet lietotni, lai pārliecinātos, ka visi avārijas ziņojumi SDK darbojas kā paredzēts un nerada nekādus konfliktus.
Rezumējot, lai gan ir tehniski iespējams izmantot vairākus avārijas ziņojumus par SDK ar MVVMCross, tas prasa rūpīgu iestatīšanu un pārbaudi, īpaši iOS. Android operētājsistēmā tas ir vienkāršāk, taču joprojām ir jāpievērš uzmanība inicializācijas kārtībai.
Atsauces:[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-multiple-crash-reporter-on-ios
[5] https://www.youtube.com/watch?v=jr2fe-wan9c
.
[7] https://github.com/mvvmcross/mvvmcross/issues/4295
[8] https://help.instabug.com/en/articles/2102240-can-i-use-the-instabug-crash-reporting-tool-inallel-with-whash-Reporters
[9] https://www.appdome.com/how-tay/mobile-app-security/mobile-data-cryption/appdome-integrates-crash-reporting-sdk/
.
[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-to-tout-ios-crash-reports-with-lldb