Pri inovácii na MVVMCross 6 je potrebné poznamenať niekoľko zmien a úvah týkajúcich sa doplnkov:
1. Štruktúra doplnkov a menné priestory: V MVVMCross 6 bola pluginová štruktúra refaktorovaná. Namespace pre doplnky sa zmenil z `mvvmcross.plugins. {PluginName}. {Platform}` na `mvvmcross.plugin. {PluginName} .platforms. {Platform}`. Táto zmena zjednodušuje správu doplnkov, ale vyžaduje aktualizácie vo vašom kóde, ak priamo odkazujete na tieto menné priestory [4].
2. Súbory bootstrap: MVVMCROSS 6 už nepoužíva súbory bootstrap pre doplnky. Namiesto toho sa doplnky načítajú pomocou atribútu `[mvxplugin]` a zdedením od `imvxplugin`. Toto zjednodušuje proces pridávania a správy doplnkov vo vašej aplikácii [7].
3. Explicitné referencie: V niektorých prípadoch sa doplnky nemusia načítať, pokiaľ sa vo vašom kóde výslovne neposudzujú. Toto je obzvlášť relevantné, ak váš projekt priamo nepoužíva typy z doplnku, pretože kompilátor nemusí obsahovať zostavu doplnkov do výstupu zostavenia [5].
4. Verzia Kompatibilita: Uistite sa, že všetky balíčky MVVMCross, vrátane doplnkov, sa aktualizujú na rovnakú verziu, aby sa predišlo problémom s kompatibilitou. Je to rozhodujúce, pretože MVVMCross 6 vyžaduje .NET štandard 2.0 a všetky komponenty sa musia zosúladiť s touto požiadavkou [4] [7].
5. Plužby načítania: Metóda `Loadplugins` sa používa na načítanie doplnkov počas spustenia aplikácie. Ak sa stretnete s problémami s doplnkami, ktoré sa načítajú, možno budete musieť túto metódu prepísať vo svojom súbore `setup.cs`, aby ste manuálne zabezpečili správne načítanie doplnkov [1] [2].
6. Konkrétne doplnky: Aj keď neexistujú žiadne konkrétne doplnky, ktoré všeobecne vyžadujú pozornosť, doplnky, ako je doplnok Messenger, môžu potrebovať aktualizácie, ktoré zodpovedajú verzii MVVMCross, ktorý používate. Napríklad pri inovácii z MVVMCross 6.4.2 na 8.0.1 sa uistite, že doplnok Messenger je aktualizovaný aj na verziu 8.0.1, aby sa predišlo problémom s rozlíšením [9].
Stručne povedané, inovácia na MVVMCross 6 zahŕňa aktualizáciu doplnkových menných priestorov, odstránenie súborov bootstrap, zabezpečenie explicitných odkazov na doplnky, ak je to potrebné, udržiavať kompatibilitu verzie a v prípade potreby manuálne načítať doplnky.
Citácie:[1] https://stackoverflow.com/questions/73128508/how-to-load-plugins-wen-Updating-to-mvvmcross-6-6-4-2-from-5-6-2
[2] https://stackoverflow.com/q/33774785
[3] https://www.mvvmcross.com/mvvmcross-5-release/
[4] https://www.mvvmcross.com/documentation/upgrading/upgrade-to-mvvvmcross-60
[5] https://github.com/mvvmcross/mvvmcross/issues/2923
[6] https://github.com/aalice072/mvvmcross/blob/master/changelog.md
[7] https://www.mvvmcross.com/mvvmcross-6.0.0-release/
[8] https://github.com/mvvmcross/mvvmcross/issues/3531
[9] https://stackoverflow.com/questions/68214000/MVVMCross Upgradgate-from-6-4-4-2--1-8-1-1
[10] https://github.com/mvvmcross/mvvmcross/releases
[11] https://www.nuget.org/packages/mvvmcross.plugin.ble/