MVVMCROSS 6.4.2 ir atjauninājums MVVMCROSS 6 sērijā, kas ieviesa vairākas izmaiņas un uzlabojumus ietvarā. Kaut arī īpašas izmaiņas pašā 6.4.2 gadījumā nav detalizētas meklēšanas rezultātos, izpratne par plašāku MVVMCROSS 6 un tā spraudņu iekraušanas mehānisma kontekstu var palīdzēt noteikt iespējamo ietekmi uz spraudņu iekraušanu.
atslēgas izmaiņas MVVMCROSS 6
1. Vienkāršota spraudņu izstrāde: Sākot no MVVMCROSS 6.0, spraudņu izstrāde kļuva vienkāršāka. Lai izveidotu spraudni, jums jāizveido bibliotēka, kas atsaucas uz galveno MVVMCROSS paketi, pievienojiet veidu, kas manto no `imvxplugin`, un anotē to ar` mvxpluginattribute`. Spraudņa “slodzes” metode tiek automātiski izsaukta lietotnes iestatīšanas laikā, kur jums jāreģistrē pakalpojumi un klases ar SOK konteineru [4].
2. IOC uzlabojumi: MVVMCROSS 6 ietver uzlabojumus SOK (vadības apgrieziena) sistēmā, piemēram, labāku konstruktoru saskaņošanu pakalpojumiem, kas varētu ietekmēt spraudņu ielādes un reģistrētus [9].
3. Platformas atbalsts: MVVMCROSS 6 atbalsta dažādas platformas, ieskaitot Xamarin iOS, Android, Forms, Windows un Mac. Šis plašais atbalsts nodrošina spraudņus var izmantot dažādās platformās, bet tas arī nozīmē, ka platformai specifiskas problēmas var rasties, ja tās nav pareizi apstrādātas [2].
potenciālās problēmas ar spraudņu iekraušanu
- Montāžas iekraušana: MVVMCROSS 6 spraudņus ielādē ar skenēšanas komplektiem veidiem, kas anotēti ar `mvxpluginAttribute`. Ja mezgli, kas satur spraudņus, nav pareizi norādīti vai ielādēti, tas var izraisīt problēmas ar spraudņu ielādi [1] [4].
- NULL atsauces izņēmumi: kā redzams dažos gadījumos, var rasties nulles atsauces izņēmumi, ja spraudņu komplekti nav pareizi identificēti vai ja ir problēmas ar SOK reģistrācijas procesu [1].
- Versijas savietojamība: lai izvairītos no saderības problēmām, ir svarīgi nodrošināt, ka visi MVVMCROSS paketes un spraudņi ir vienā un tajā pašā versijā. Tas ietver pārbaudi, vai visas Nuget paketes tiek atjauninātas uz jaunākajām saderīgajām versijām [7].
paraugprakse spraudņu iekraušanai MVVMCROSS 6.4.2
- Pareizi ignorēt `LoadPlugins`: ja, pielāgojot spraudņu ielādi, pārliecinieties, vai metode“ LoadPlugins` ir pareizi ignorēta platformas specifiskajās iestatīšanas klasēs, lai apstrādātu jebkuru pielāgotu loģiku [1] [7].
- Izmantojiet `IMVXPluginManager`: izmantojiet` IMVXPluginManager`, lai pārvaldītu spraudņu ielādi un pārliecinātos, ka spraudņi ir pareizi reģistrēti SOK konteinerā [4].
- Pārraudziet žurnālus un izņēmumus: Izmantojiet rīkus, piemēram, ierīces žurnālu Mac vai Windows, lai uzraudzītu visus izņēmumus, kas varētu rasties spraudņu ielādes laikā [3].
Rezumējot, lai gan MVVMCROSS 6.4.2 neievieš īpašas spraudņu ielādes izmaiņas, salīdzinot ar iepriekšējām Seals sērijas versijām, izpratne par vienkāršotā spraudņa izstrādes procesu un pareizas montāžas ielādes un SOK reģistrācijas nodrošināšana ir atslēga, lai izvairītos no spraudņu iekraušanas problēmām.
Atsauces:[1] https://stackoverflow.com/questions/73128508/how-to-load-plugins-when-wdating-to-mvvmcross-6-4-2-no 5-6-2
[2] https://www.nuget.org/packages/mvvmcross/6.4.2
[3] https://github.com/mvvmcross/mvvmcross/issues/4364
[4] https://www.mvvmcross.com/documentation/plugins/plugins-development
[5] https://github.com/mvvmcross/mvvmcross/blob/develop/changelog.md
[6] https://www.nuget.org/packages/plugin.ble/
[7] https://stackoverflow.com/q/33774785
[8] https://www.nuget.org/packages/mvvmcross.forms/6.4.2
[9] https://www.mvvmcross.com/mvvmcross-6.4.0-release/